diff --git a/bindings/bindings-linux-aarch64-R4.2.rs b/bindings/bindings-linux-aarch64-R4.2.rs index 0c40d277..80747f8f 100644 --- a/bindings/bindings-linux-aarch64-R4.2.rs +++ b/bindings/bindings-linux-aarch64-R4.2.rs @@ -589,348 +589,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -984,28 +722,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1018,27 +734,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1050,4746 +745,3843 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); -} -pub type pGEcontext = *mut R_GE_gcontext; -#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] -pub type DevDesc = _DevDesc; -pub type pDevDesc = *mut DevDesc; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DevDesc { - #[doc = "left raster coordinate"] - pub left: f64, - #[doc = "right raster coordinate"] - pub right: f64, - #[doc = "bottom raster coordinate"] - pub bottom: f64, - #[doc = "top raster coordinate"] - pub top: f64, - #[doc = "R only has the notion of a rectangular clipping region"] - pub clipLeft: f64, - pub clipRight: f64, - pub clipBottom: f64, - pub clipTop: f64, - #[doc = "x character addressing offset - unused"] - pub xCharOffset: f64, - #[doc = "y character addressing offset"] - pub yCharOffset: f64, - #[doc = "1/2 interline space as frac of line height"] - pub yLineBias: f64, - #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] - pub ipr: [f64; 2usize], - #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] - pub cra: [f64; 2usize], - #[doc = "(initial) Device Gamma Correction"] - pub gamma: f64, - #[doc = "Device-level clipping"] - pub canClip: Rboolean, - #[doc = "can the gamma factor be modified?"] - pub canChangeGamma: Rboolean, - #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] - pub canHAdj: ::std::os::raw::c_int, - #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] - pub startps: f64, - #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] - pub startcol: ::std::os::raw::c_int, - #[doc = "sets par(\"bg\") and gpar(\"fill\")"] - pub startfill: ::std::os::raw::c_int, - pub startlty: ::std::os::raw::c_int, - pub startfont: ::std::os::raw::c_int, - pub startgamma: f64, - #[doc = "pointer to device specific parameters"] - pub deviceSpecific: *mut ::std::os::raw::c_void, - #[doc = "toggle for initial display list status"] - pub displayListOn: Rboolean, - #[doc = "can the device generate mousedown events"] - pub canGenMouseDown: Rboolean, - #[doc = "can the device generate mousemove events"] - pub canGenMouseMove: Rboolean, - #[doc = "can the device generate mouseup events"] - pub canGenMouseUp: Rboolean, - #[doc = "can the device generate keyboard events"] - pub canGenKeybd: Rboolean, - #[doc = "can the device generate idle events"] - pub canGenIdle: Rboolean, - #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] - pub gettingEvent: Rboolean, - pub activate: ::std::option::Option, - pub circle: ::std::option::Option< - unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub clip: ::std::option::Option< - unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), - >, - pub close: ::std::option::Option, - pub deactivate: ::std::option::Option, - pub locator: ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, - >, - pub line: ::std::option::Option< - unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub metricInfo: ::std::option::Option< - unsafe extern "C" fn( - c: ::std::os::raw::c_int, - gc: pGEcontext, - ascent: *mut f64, - descent: *mut f64, - width: *mut f64, - dd: pDevDesc, - ), - >, - pub mode: - ::std::option::Option, - pub newPage: ::std::option::Option, - pub polygon: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub polyline: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub rect: ::std::option::Option< - unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub path: ::std::option::Option< - unsafe extern "C" fn( - x: *mut f64, - y: *mut f64, - npoly: ::std::os::raw::c_int, - nper: *mut ::std::os::raw::c_int, - winding: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub raster: ::std::option::Option< - unsafe extern "C" fn( - raster: *mut ::std::os::raw::c_uint, - w: ::std::os::raw::c_int, - h: ::std::os::raw::c_int, - x: f64, - y: f64, - width: f64, - height: f64, - rot: f64, - interpolate: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub cap: ::std::option::Option SEXP>, - pub size: ::std::option::Option< - unsafe extern "C" fn( - left: *mut f64, - right: *mut f64, - bottom: *mut f64, - top: *mut f64, - dd: pDevDesc, - ), - >, - pub strWidth: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub text: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub onExit: ::std::option::Option, - #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] - pub getEvent: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, - >, - pub newFrameConfirm: ::std::option::Option Rboolean>, - #[doc = "and strWidthUTF8"] - pub hasTextUTF8: Rboolean, - pub textUTF8: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub strWidthUTF8: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub wantSymbolUTF8: Rboolean, - #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] - pub useRotatedTextInContour: Rboolean, - #[doc = "This is an environment holding event handlers."] - pub eventEnv: SEXP, - pub eventHelper: - ::std::option::Option, - pub holdflush: ::std::option::Option< - unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, - >, - #[doc = "1 = no, 2 = yes"] - pub haveTransparency: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = fully, 3 = semi"] - pub haveTransparentBg: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes, 3 = except for missing values"] - pub haveRaster: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveCapture: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveLocator: ::std::os::raw::c_int, - pub setPattern: - ::std::option::Option SEXP>, - pub releasePattern: ::std::option::Option, - pub setClipPath: - ::std::option::Option SEXP>, - pub releaseClipPath: ::std::option::Option, - pub setMask: - ::std::option::Option SEXP>, - pub releaseMask: ::std::option::Option, - #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] - pub deviceVersion: ::std::os::raw::c_int, - #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] - pub deviceClip: Rboolean, - pub defineGroup: ::std::option::Option< - unsafe extern "C" fn( - source: SEXP, - op: ::std::os::raw::c_int, - destination: SEXP, - dd: pDevDesc, - ) -> SEXP, - >, - pub useGroup: - ::std::option::Option, - pub releaseGroup: ::std::option::Option, - pub stroke: - ::std::option::Option, - pub fill: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub fillStroke: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub capabilities: ::std::option::Option SEXP>, - #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] - pub reserved: [::std::os::raw::c_char; 64usize], +pub type pGEcontext = *mut R_GE_gcontext; +#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] +pub type DevDesc = _DevDesc; +pub type pDevDesc = *mut DevDesc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DevDesc { + #[doc = "left raster coordinate"] + pub left: f64, + #[doc = "right raster coordinate"] + pub right: f64, + #[doc = "bottom raster coordinate"] + pub bottom: f64, + #[doc = "top raster coordinate"] + pub top: f64, + #[doc = "R only has the notion of a rectangular clipping region"] + pub clipLeft: f64, + pub clipRight: f64, + pub clipBottom: f64, + pub clipTop: f64, + #[doc = "x character addressing offset - unused"] + pub xCharOffset: f64, + #[doc = "y character addressing offset"] + pub yCharOffset: f64, + #[doc = "1/2 interline space as frac of line height"] + pub yLineBias: f64, + #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] + pub ipr: [f64; 2usize], + #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] + pub cra: [f64; 2usize], + #[doc = "(initial) Device Gamma Correction"] + pub gamma: f64, + #[doc = "Device-level clipping"] + pub canClip: Rboolean, + #[doc = "can the gamma factor be modified?"] + pub canChangeGamma: Rboolean, + #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] + pub canHAdj: ::std::os::raw::c_int, + #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] + pub startps: f64, + #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] + pub startcol: ::std::os::raw::c_int, + #[doc = "sets par(\"bg\") and gpar(\"fill\")"] + pub startfill: ::std::os::raw::c_int, + pub startlty: ::std::os::raw::c_int, + pub startfont: ::std::os::raw::c_int, + pub startgamma: f64, + #[doc = "pointer to device specific parameters"] + pub deviceSpecific: *mut ::std::os::raw::c_void, + #[doc = "toggle for initial display list status"] + pub displayListOn: Rboolean, + #[doc = "can the device generate mousedown events"] + pub canGenMouseDown: Rboolean, + #[doc = "can the device generate mousemove events"] + pub canGenMouseMove: Rboolean, + #[doc = "can the device generate mouseup events"] + pub canGenMouseUp: Rboolean, + #[doc = "can the device generate keyboard events"] + pub canGenKeybd: Rboolean, + #[doc = "can the device generate idle events"] + pub canGenIdle: Rboolean, + #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] + pub gettingEvent: Rboolean, + pub activate: ::std::option::Option, + pub circle: ::std::option::Option< + unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub clip: ::std::option::Option< + unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), + >, + pub close: ::std::option::Option, + pub deactivate: ::std::option::Option, + pub locator: ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, + >, + pub line: ::std::option::Option< + unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub metricInfo: ::std::option::Option< + unsafe extern "C" fn( + c: ::std::os::raw::c_int, + gc: pGEcontext, + ascent: *mut f64, + descent: *mut f64, + width: *mut f64, + dd: pDevDesc, + ), + >, + pub mode: + ::std::option::Option, + pub newPage: ::std::option::Option, + pub polygon: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub polyline: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub rect: ::std::option::Option< + unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub path: ::std::option::Option< + unsafe extern "C" fn( + x: *mut f64, + y: *mut f64, + npoly: ::std::os::raw::c_int, + nper: *mut ::std::os::raw::c_int, + winding: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub raster: ::std::option::Option< + unsafe extern "C" fn( + raster: *mut ::std::os::raw::c_uint, + w: ::std::os::raw::c_int, + h: ::std::os::raw::c_int, + x: f64, + y: f64, + width: f64, + height: f64, + rot: f64, + interpolate: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub cap: ::std::option::Option SEXP>, + pub size: ::std::option::Option< + unsafe extern "C" fn( + left: *mut f64, + right: *mut f64, + bottom: *mut f64, + top: *mut f64, + dd: pDevDesc, + ), + >, + pub strWidth: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub text: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub onExit: ::std::option::Option, + #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] + pub getEvent: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, + >, + pub newFrameConfirm: ::std::option::Option Rboolean>, + #[doc = "and strWidthUTF8"] + pub hasTextUTF8: Rboolean, + pub textUTF8: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub strWidthUTF8: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub wantSymbolUTF8: Rboolean, + #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] + pub useRotatedTextInContour: Rboolean, + #[doc = "This is an environment holding event handlers."] + pub eventEnv: SEXP, + pub eventHelper: + ::std::option::Option, + pub holdflush: ::std::option::Option< + unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, + >, + #[doc = "1 = no, 2 = yes"] + pub haveTransparency: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = fully, 3 = semi"] + pub haveTransparentBg: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes, 3 = except for missing values"] + pub haveRaster: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveCapture: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveLocator: ::std::os::raw::c_int, + pub setPattern: + ::std::option::Option SEXP>, + pub releasePattern: ::std::option::Option, + pub setClipPath: + ::std::option::Option SEXP>, + pub releaseClipPath: ::std::option::Option, + pub setMask: + ::std::option::Option SEXP>, + pub releaseMask: ::std::option::Option, + #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] + pub deviceVersion: ::std::os::raw::c_int, + #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] + pub deviceClip: Rboolean, + pub defineGroup: ::std::option::Option< + unsafe extern "C" fn( + source: SEXP, + op: ::std::os::raw::c_int, + destination: SEXP, + dd: pDevDesc, + ) -> SEXP, + >, + pub useGroup: + ::std::option::Option, + pub releaseGroup: ::std::option::Option, + pub stroke: + ::std::option::Option, + pub fill: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub fillStroke: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub capabilities: ::std::option::Option SEXP>, + #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] + pub reserved: [::std::os::raw::c_char; 64usize], } #[test] fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 648usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 648usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(startfont) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deviceSpecific) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(displayListOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(path) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(raster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(cap) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(mode) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(newPage) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(polygon) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(polyline) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(rect) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(path) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(raster) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(cap) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidth) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(text) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(onExit) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(getEvent) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newFrameConfirm) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(hasTextUTF8) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(textUTF8) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(strWidthUTF8) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(wantSymbolUTF8) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(useRotatedTextInContour) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(eventEnv) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventHelper) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveRaster) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveCapture) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, + ); + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, + ); + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, + ); + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); pub fn Rf_doMouseEvent( dd: pDevDesc, event: R_MouseEvent, @@ -5797,349 +4589,70 @@ extern "C" { x: f64, y: f64, ); -} -extern "C" { pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { pub static mut mbcslocale: Rboolean; -} -extern "C" { pub fn Rf_AdobeSymbol2utf8( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, nwork: usize, usePUA: Rboolean, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn Rf_utf8toAdobeSymbol( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( in_: *const ::std::os::raw::c_char, usePUA: Rboolean, ) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Translates Unicode point to UTF-8"] pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) - ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) - ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { - pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { + pub fn GEkillDevice(arg1: pGEDevDesc); pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6147,8 +4660,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6156,8 +4667,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6169,14 +4678,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6186,8 +4689,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6201,11 +4702,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6217,11 +4714,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6230,11 +4723,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6243,24 +4732,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6270,18 +4753,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6291,8 +4766,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6301,8 +4774,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6310,8 +4781,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6320,8 +4789,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6331,8 +4798,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6342,15 +4807,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6359,8 +4818,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6371,8 +4828,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6383,8 +4838,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6392,16 +4845,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6413,55 +4862,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6469,122 +4888,50 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6593,8 +4940,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6602,8 +4947,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6611,15 +4954,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6629,11 +4968,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6642,8 +4977,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6651,16 +4984,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6668,15 +4997,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6692,8 +5017,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6707,8 +5030,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6722,8 +5043,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6735,8 +5054,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6749,8 +5066,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6761,9 +5076,7 @@ extern "C" { lda: *const ::std::os::raw::c_int, x: *mut f64, incx: *const ::std::os::raw::c_int, - ); -} -extern "C" { + ); pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6773,8 +5086,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6785,8 +5096,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6798,8 +5107,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6809,8 +5116,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6821,8 +5126,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6834,8 +5137,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6845,8 +5146,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6855,8 +5154,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6868,8 +5165,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6880,8 +5175,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6897,8 +5190,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6912,8 +5203,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6927,8 +5216,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6943,8 +5230,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6957,8 +5242,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6973,32 +5256,22 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7007,8 +5280,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7016,8 +5287,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7025,8 +5294,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7034,8 +5301,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7045,16 +5310,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7070,8 +5331,6 @@ extern "C" { y: *mut Rcomplex, incy: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7087,8 +5346,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7102,8 +5359,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7115,8 +5370,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7128,8 +5381,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7143,8 +5394,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7159,8 +5408,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7173,8 +5420,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7184,8 +5429,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7197,8 +5440,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7213,8 +5454,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7227,8 +5466,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7240,8 +5477,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7250,8 +5485,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7262,19 +5495,13 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7282,8 +5509,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7298,8 +5523,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7314,8 +5537,6 @@ extern "C" { c: *mut Rcomplex, ldc: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7328,8 +5549,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7341,8 +5560,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7354,8 +5571,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7365,8 +5580,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7376,8 +5589,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7391,8 +5602,6 @@ extern "C" { b: *mut Rcomplex, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7403,8 +5612,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7418,8 +5625,6 @@ extern "C" { b: *mut Rcomplex, ldb: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7430,12 +5635,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7454,8 +5653,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7473,24 +5670,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7508,8 +5687,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7527,8 +5704,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7546,8 +5721,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7569,8 +5742,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7582,8 +5753,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7593,8 +5762,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7604,8 +5771,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7616,8 +5781,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7629,27 +5792,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7680,8 +5822,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7693,8 +5833,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7710,92 +5848,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} diff --git a/bindings/bindings-linux-aarch64-R4.3.rs b/bindings/bindings-linux-aarch64-R4.3.rs index 277c54ed..b6cdcda0 100644 --- a/bindings/bindings-linux-aarch64-R4.3.rs +++ b/bindings/bindings-linux-aarch64-R4.3.rs @@ -595,348 +595,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -990,28 +728,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1024,27 +740,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1056,3629 +751,912 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } pub type pGEcontext = *mut R_GE_gcontext; #[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] @@ -4946,911 +1924,2713 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deviceSpecific) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(displayListOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(locator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(line) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(metricInfo) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(mode) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(text) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(onExit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(getEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newFrameConfirm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(hasTextUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(textUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidthUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(wantSymbolUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(deactivate) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(locator) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(line) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(metricInfo) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(mode) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newPage) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(polygon) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(polyline) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(rect) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(path) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(raster) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(cap) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(strWidth) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(text) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(onExit) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(getEvent) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(newFrameConfirm) - ) + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(hasTextUTF8) - ) + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(textUTF8) - ) + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(strWidthUTF8) - ) + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(wantSymbolUTF8) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventEnv) - ) + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventHelper) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveRaster) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveCapture) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); -} -extern "C" { + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "Check for an available device slot"] pub fn R_CheckDeviceAvailable(); -} -extern "C" { pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { pub fn Rf_doMouseEvent( dd: pDevDesc, event: R_MouseEvent, @@ -5858,349 +4638,70 @@ extern "C" { x: f64, y: f64, ); -} -extern "C" { pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { pub static mut mbcslocale: Rboolean; -} -extern "C" { pub fn Rf_AdobeSymbol2utf8( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, nwork: usize, usePUA: Rboolean, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn Rf_utf8toAdobeSymbol( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( in_: *const ::std::os::raw::c_char, usePUA: Rboolean, ) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Translates Unicode point to UTF-8"] pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) - ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) - ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { - pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { - pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { - pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { + pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; + pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; + pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6208,8 +4709,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6217,8 +4716,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6230,14 +4727,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6247,8 +4738,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6262,11 +4751,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6278,11 +4763,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6291,11 +4772,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6304,24 +4781,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6331,18 +4802,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6352,8 +4815,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6362,8 +4823,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6371,8 +4830,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6381,8 +4838,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6392,8 +4847,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6403,15 +4856,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6420,8 +4867,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6432,8 +4877,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6444,8 +4887,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6453,16 +4894,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6474,55 +4911,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6530,144 +4937,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6679,28 +4994,18 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6709,8 +5014,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6718,8 +5021,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6727,15 +5028,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6745,11 +5042,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6758,8 +5051,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6767,16 +5058,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6784,15 +5071,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6809,8 +5092,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6825,8 +5106,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6841,8 +5120,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6855,8 +5132,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6870,8 +5145,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6885,9 +5158,7 @@ extern "C" { arg1: usize, arg2: usize, arg3: usize, - ); -} -extern "C" { + ); pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6900,8 +5171,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6915,8 +5184,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6931,8 +5198,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6945,8 +5210,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6960,8 +5223,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6973,8 +5234,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6985,8 +5244,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6996,8 +5253,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7010,8 +5265,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7023,8 +5276,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7042,8 +5293,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7061,8 +5310,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7080,8 +5327,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7098,8 +5343,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7114,8 +5357,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7132,32 +5373,22 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7166,8 +5397,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7175,8 +5404,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7184,8 +5411,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7193,8 +5418,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7204,16 +5427,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7230,8 +5449,6 @@ extern "C" { incy: *mut ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7249,8 +5466,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7265,8 +5480,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7278,8 +5491,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7291,8 +5502,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7307,8 +5516,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7325,8 +5532,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7340,8 +5545,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7352,8 +5555,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7366,8 +5567,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7384,8 +5583,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7400,8 +5597,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7414,8 +5609,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7425,8 +5618,6 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7438,19 +5629,13 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7458,8 +5643,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7476,8 +5659,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7494,8 +5675,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7510,8 +5689,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7526,8 +5703,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7542,8 +5717,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7556,8 +5729,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7570,8 +5741,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7589,8 +5758,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7604,8 +5771,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7623,8 +5788,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7638,12 +5801,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7662,8 +5819,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7681,24 +5836,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7716,8 +5853,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7735,8 +5870,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7754,8 +5887,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7777,8 +5908,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7790,8 +5919,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7801,8 +5928,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7812,8 +5937,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7824,8 +5947,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7837,27 +5958,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7888,8 +5988,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7901,8 +5999,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7918,92 +6014,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} diff --git a/bindings/bindings-linux-aarch64-R4.4-devel.rs b/bindings/bindings-linux-aarch64-R4.4-devel.rs index 64034519..a5ff9893 100644 --- a/bindings/bindings-linux-aarch64-R4.4-devel.rs +++ b/bindings/bindings-linux-aarch64-R4.4-devel.rs @@ -595,348 +595,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -990,28 +728,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1024,27 +740,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1056,3487 +751,767 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub nconnections: ::std::os::raw::c_int, } -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nconnections) + ) + ); } -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub nconnections: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, - 84usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nconnections) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } #[test] fn bindgen_test_layout_R_GE_gcontext() { @@ -4959,1261 +1934,2785 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deviceSpecific) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(canGenMouseMove) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(canGenMouseUp) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(canGenKeybd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(canGenIdle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(gettingEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(locator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(line) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(metricInfo) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(mode) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(newPage) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(polygon) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(polyline) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(rect) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(path) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(raster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(cap) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(hasTextUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(textUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidthUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(wantSymbolUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(useRotatedTextInContour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(getEvent) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newFrameConfirm) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(hasTextUTF8) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(textUTF8) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(strWidthUTF8) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(wantSymbolUTF8) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventEnv) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventHelper) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(holdflush) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveLocator) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setPattern) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(setClipPath) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releaseClipPath) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ); + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6221,8 +4720,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6230,8 +4727,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6243,14 +4738,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6260,8 +4749,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6275,11 +4762,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6291,11 +4774,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6304,11 +4783,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6317,24 +4792,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6344,18 +4813,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6365,8 +4826,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6375,8 +4834,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6384,8 +4841,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6394,8 +4849,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6405,8 +4858,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6416,15 +4867,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6433,8 +4878,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6445,8 +4888,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6457,8 +4898,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6466,16 +4905,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6487,55 +4922,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { - pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { + pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6543,144 +4948,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6692,25 +5005,13 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -6729,8 +5030,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -6748,24 +5047,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -6783,8 +5064,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6802,8 +5081,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6821,8 +5098,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -6844,8 +5119,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -6857,8 +5130,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6868,8 +5139,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6879,8 +5148,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6891,8 +5158,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -6904,27 +5169,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -6955,8 +5199,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -6968,8 +5210,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6985,92 +5225,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} diff --git a/bindings/bindings-linux-x86_64-R4.2.rs b/bindings/bindings-linux-x86_64-R4.2.rs index 817edb4a..217b7113 100644 --- a/bindings/bindings-linux-x86_64-R4.2.rs +++ b/bindings/bindings-linux-x86_64-R4.2.rs @@ -589,348 +589,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -984,28 +722,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1018,27 +734,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1050,5096 +745,3978 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); -} -pub type pGEcontext = *mut R_GE_gcontext; -#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] -pub type DevDesc = _DevDesc; -pub type pDevDesc = *mut DevDesc; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DevDesc { - #[doc = "left raster coordinate"] - pub left: f64, - #[doc = "right raster coordinate"] - pub right: f64, - #[doc = "bottom raster coordinate"] - pub bottom: f64, - #[doc = "top raster coordinate"] - pub top: f64, - #[doc = "R only has the notion of a rectangular clipping region"] - pub clipLeft: f64, - pub clipRight: f64, - pub clipBottom: f64, - pub clipTop: f64, - #[doc = "x character addressing offset - unused"] - pub xCharOffset: f64, - #[doc = "y character addressing offset"] - pub yCharOffset: f64, - #[doc = "1/2 interline space as frac of line height"] - pub yLineBias: f64, - #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] - pub ipr: [f64; 2usize], - #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] - pub cra: [f64; 2usize], - #[doc = "(initial) Device Gamma Correction"] - pub gamma: f64, - #[doc = "Device-level clipping"] - pub canClip: Rboolean, - #[doc = "can the gamma factor be modified?"] - pub canChangeGamma: Rboolean, - #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] - pub canHAdj: ::std::os::raw::c_int, - #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] - pub startps: f64, - #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] - pub startcol: ::std::os::raw::c_int, - #[doc = "sets par(\"bg\") and gpar(\"fill\")"] - pub startfill: ::std::os::raw::c_int, - pub startlty: ::std::os::raw::c_int, - pub startfont: ::std::os::raw::c_int, - pub startgamma: f64, - #[doc = "pointer to device specific parameters"] - pub deviceSpecific: *mut ::std::os::raw::c_void, - #[doc = "toggle for initial display list status"] - pub displayListOn: Rboolean, - #[doc = "can the device generate mousedown events"] - pub canGenMouseDown: Rboolean, - #[doc = "can the device generate mousemove events"] - pub canGenMouseMove: Rboolean, - #[doc = "can the device generate mouseup events"] - pub canGenMouseUp: Rboolean, - #[doc = "can the device generate keyboard events"] - pub canGenKeybd: Rboolean, - #[doc = "can the device generate idle events"] - pub canGenIdle: Rboolean, - #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] - pub gettingEvent: Rboolean, - pub activate: ::std::option::Option, - pub circle: ::std::option::Option< - unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub clip: ::std::option::Option< - unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), - >, - pub close: ::std::option::Option, - pub deactivate: ::std::option::Option, - pub locator: ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, - >, - pub line: ::std::option::Option< - unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub metricInfo: ::std::option::Option< - unsafe extern "C" fn( - c: ::std::os::raw::c_int, - gc: pGEcontext, - ascent: *mut f64, - descent: *mut f64, - width: *mut f64, - dd: pDevDesc, - ), - >, - pub mode: - ::std::option::Option, - pub newPage: ::std::option::Option, - pub polygon: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub polyline: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub rect: ::std::option::Option< - unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub path: ::std::option::Option< - unsafe extern "C" fn( - x: *mut f64, - y: *mut f64, - npoly: ::std::os::raw::c_int, - nper: *mut ::std::os::raw::c_int, - winding: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub raster: ::std::option::Option< - unsafe extern "C" fn( - raster: *mut ::std::os::raw::c_uint, - w: ::std::os::raw::c_int, - h: ::std::os::raw::c_int, - x: f64, - y: f64, - width: f64, - height: f64, - rot: f64, - interpolate: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub cap: ::std::option::Option SEXP>, - pub size: ::std::option::Option< - unsafe extern "C" fn( - left: *mut f64, - right: *mut f64, - bottom: *mut f64, - top: *mut f64, - dd: pDevDesc, - ), - >, - pub strWidth: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub text: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub onExit: ::std::option::Option, - #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] - pub getEvent: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, - >, - pub newFrameConfirm: ::std::option::Option Rboolean>, - #[doc = "and strWidthUTF8"] - pub hasTextUTF8: Rboolean, - pub textUTF8: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub strWidthUTF8: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub wantSymbolUTF8: Rboolean, - #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] - pub useRotatedTextInContour: Rboolean, - #[doc = "This is an environment holding event handlers."] - pub eventEnv: SEXP, - pub eventHelper: - ::std::option::Option, - pub holdflush: ::std::option::Option< - unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, - >, - #[doc = "1 = no, 2 = yes"] - pub haveTransparency: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = fully, 3 = semi"] - pub haveTransparentBg: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes, 3 = except for missing values"] - pub haveRaster: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveCapture: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveLocator: ::std::os::raw::c_int, - pub setPattern: - ::std::option::Option SEXP>, - pub releasePattern: ::std::option::Option, - pub setClipPath: - ::std::option::Option SEXP>, - pub releaseClipPath: ::std::option::Option, - pub setMask: - ::std::option::Option SEXP>, - pub releaseMask: ::std::option::Option, - #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] - pub deviceVersion: ::std::os::raw::c_int, - #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] - pub deviceClip: Rboolean, - pub defineGroup: ::std::option::Option< - unsafe extern "C" fn( - source: SEXP, - op: ::std::os::raw::c_int, - destination: SEXP, - dd: pDevDesc, - ) -> SEXP, - >, - pub useGroup: - ::std::option::Option, - pub releaseGroup: ::std::option::Option, - pub stroke: - ::std::option::Option, - pub fill: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub fillStroke: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub capabilities: ::std::option::Option SEXP>, - #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] - pub reserved: [::std::os::raw::c_char; 64usize], +pub type pGEcontext = *mut R_GE_gcontext; +#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] +pub type DevDesc = _DevDesc; +pub type pDevDesc = *mut DevDesc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DevDesc { + #[doc = "left raster coordinate"] + pub left: f64, + #[doc = "right raster coordinate"] + pub right: f64, + #[doc = "bottom raster coordinate"] + pub bottom: f64, + #[doc = "top raster coordinate"] + pub top: f64, + #[doc = "R only has the notion of a rectangular clipping region"] + pub clipLeft: f64, + pub clipRight: f64, + pub clipBottom: f64, + pub clipTop: f64, + #[doc = "x character addressing offset - unused"] + pub xCharOffset: f64, + #[doc = "y character addressing offset"] + pub yCharOffset: f64, + #[doc = "1/2 interline space as frac of line height"] + pub yLineBias: f64, + #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] + pub ipr: [f64; 2usize], + #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] + pub cra: [f64; 2usize], + #[doc = "(initial) Device Gamma Correction"] + pub gamma: f64, + #[doc = "Device-level clipping"] + pub canClip: Rboolean, + #[doc = "can the gamma factor be modified?"] + pub canChangeGamma: Rboolean, + #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] + pub canHAdj: ::std::os::raw::c_int, + #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] + pub startps: f64, + #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] + pub startcol: ::std::os::raw::c_int, + #[doc = "sets par(\"bg\") and gpar(\"fill\")"] + pub startfill: ::std::os::raw::c_int, + pub startlty: ::std::os::raw::c_int, + pub startfont: ::std::os::raw::c_int, + pub startgamma: f64, + #[doc = "pointer to device specific parameters"] + pub deviceSpecific: *mut ::std::os::raw::c_void, + #[doc = "toggle for initial display list status"] + pub displayListOn: Rboolean, + #[doc = "can the device generate mousedown events"] + pub canGenMouseDown: Rboolean, + #[doc = "can the device generate mousemove events"] + pub canGenMouseMove: Rboolean, + #[doc = "can the device generate mouseup events"] + pub canGenMouseUp: Rboolean, + #[doc = "can the device generate keyboard events"] + pub canGenKeybd: Rboolean, + #[doc = "can the device generate idle events"] + pub canGenIdle: Rboolean, + #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] + pub gettingEvent: Rboolean, + pub activate: ::std::option::Option, + pub circle: ::std::option::Option< + unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub clip: ::std::option::Option< + unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), + >, + pub close: ::std::option::Option, + pub deactivate: ::std::option::Option, + pub locator: ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, + >, + pub line: ::std::option::Option< + unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub metricInfo: ::std::option::Option< + unsafe extern "C" fn( + c: ::std::os::raw::c_int, + gc: pGEcontext, + ascent: *mut f64, + descent: *mut f64, + width: *mut f64, + dd: pDevDesc, + ), + >, + pub mode: + ::std::option::Option, + pub newPage: ::std::option::Option, + pub polygon: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub polyline: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub rect: ::std::option::Option< + unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub path: ::std::option::Option< + unsafe extern "C" fn( + x: *mut f64, + y: *mut f64, + npoly: ::std::os::raw::c_int, + nper: *mut ::std::os::raw::c_int, + winding: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub raster: ::std::option::Option< + unsafe extern "C" fn( + raster: *mut ::std::os::raw::c_uint, + w: ::std::os::raw::c_int, + h: ::std::os::raw::c_int, + x: f64, + y: f64, + width: f64, + height: f64, + rot: f64, + interpolate: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub cap: ::std::option::Option SEXP>, + pub size: ::std::option::Option< + unsafe extern "C" fn( + left: *mut f64, + right: *mut f64, + bottom: *mut f64, + top: *mut f64, + dd: pDevDesc, + ), + >, + pub strWidth: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub text: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub onExit: ::std::option::Option, + #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] + pub getEvent: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, + >, + pub newFrameConfirm: ::std::option::Option Rboolean>, + #[doc = "and strWidthUTF8"] + pub hasTextUTF8: Rboolean, + pub textUTF8: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub strWidthUTF8: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub wantSymbolUTF8: Rboolean, + #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] + pub useRotatedTextInContour: Rboolean, + #[doc = "This is an environment holding event handlers."] + pub eventEnv: SEXP, + pub eventHelper: + ::std::option::Option, + pub holdflush: ::std::option::Option< + unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, + >, + #[doc = "1 = no, 2 = yes"] + pub haveTransparency: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = fully, 3 = semi"] + pub haveTransparentBg: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes, 3 = except for missing values"] + pub haveRaster: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveCapture: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveLocator: ::std::os::raw::c_int, + pub setPattern: + ::std::option::Option SEXP>, + pub releasePattern: ::std::option::Option, + pub setClipPath: + ::std::option::Option SEXP>, + pub releaseClipPath: ::std::option::Option, + pub setMask: + ::std::option::Option SEXP>, + pub releaseMask: ::std::option::Option, + #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] + pub deviceVersion: ::std::os::raw::c_int, + #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] + pub deviceClip: Rboolean, + pub defineGroup: ::std::option::Option< + unsafe extern "C" fn( + source: SEXP, + op: ::std::os::raw::c_int, + destination: SEXP, + dd: pDevDesc, + ) -> SEXP, + >, + pub useGroup: + ::std::option::Option, + pub releaseGroup: ::std::option::Option, + pub stroke: + ::std::option::Option, + pub fill: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub fillStroke: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub capabilities: ::std::option::Option SEXP>, + #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] + pub reserved: [::std::os::raw::c_char; 64usize], } #[test] fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 648usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 648usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(startfill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(startlty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(startfont) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(startgamma) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(canGenMouseMove) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(canGenMouseUp) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(canGenKeybd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(canGenIdle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(gettingEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(getEvent) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(newFrameConfirm) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(hasTextUTF8) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(textUTF8) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidthUTF8) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventEnv) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventHelper) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(holdflush) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releasePattern) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(setClipPath) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseClipPath) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(setMask) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseMask) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(deviceVersion) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, + ); + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, + ); + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6147,8 +4724,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6156,8 +4731,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6169,14 +4742,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { - pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { + pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6186,8 +4753,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6201,11 +4766,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6217,11 +4778,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6230,11 +4787,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6243,24 +4796,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6270,18 +4817,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6291,8 +4830,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6301,8 +4838,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6310,8 +4845,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6320,8 +4853,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6331,8 +4862,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6342,15 +4871,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6359,8 +4882,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6371,8 +4892,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6383,8 +4902,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6392,16 +4909,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6413,55 +4926,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6469,122 +4952,50 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6593,8 +5004,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6602,8 +5011,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6611,15 +5018,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6629,11 +5032,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6642,8 +5041,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6651,16 +5048,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6668,15 +5061,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6692,8 +5081,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6707,8 +5094,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6722,8 +5107,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6735,8 +5118,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6749,8 +5130,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6762,8 +5141,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6773,8 +5150,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6785,8 +5160,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6798,8 +5171,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6809,8 +5180,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6821,8 +5190,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6834,8 +5201,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6845,8 +5210,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6855,8 +5218,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6868,8 +5229,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6880,8 +5239,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6897,8 +5254,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6912,8 +5267,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6927,8 +5280,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6943,8 +5294,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6957,8 +5306,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6973,32 +5320,22 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7007,8 +5344,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7016,8 +5351,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7025,8 +5358,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7034,8 +5365,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7045,16 +5374,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7070,8 +5395,6 @@ extern "C" { y: *mut Rcomplex, incy: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7087,8 +5410,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7102,8 +5423,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7115,8 +5434,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7128,8 +5445,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7142,9 +5457,7 @@ extern "C" { Rf_beta: *const Rcomplex, y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, - ); -} -extern "C" { + ); pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7159,8 +5472,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7173,8 +5484,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7184,8 +5493,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7197,8 +5504,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7213,8 +5518,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7227,8 +5530,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7240,8 +5541,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7250,8 +5549,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7262,19 +5559,13 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7282,8 +5573,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7298,8 +5587,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7314,8 +5601,6 @@ extern "C" { c: *mut Rcomplex, ldc: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7328,8 +5613,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7341,8 +5624,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7354,8 +5635,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7365,8 +5644,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7376,8 +5653,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7391,8 +5666,6 @@ extern "C" { b: *mut Rcomplex, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7403,8 +5676,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7418,8 +5689,6 @@ extern "C" { b: *mut Rcomplex, ldb: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7430,12 +5699,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7454,8 +5717,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7473,24 +5734,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7508,8 +5751,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7527,8 +5768,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7546,8 +5785,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7569,8 +5806,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7582,8 +5817,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7593,8 +5826,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7604,8 +5835,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7616,8 +5845,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7629,27 +5856,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7680,8 +5886,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7693,8 +5897,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7710,156 +5912,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-linux-x86_64-R4.3.rs b/bindings/bindings-linux-x86_64-R4.3.rs index cdbe9f62..0def1ccb 100644 --- a/bindings/bindings-linux-x86_64-R4.3.rs +++ b/bindings/bindings-linux-x86_64-R4.3.rs @@ -595,348 +595,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -990,28 +728,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1024,27 +740,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1056,3629 +751,912 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } pub type pGEcontext = *mut R_GE_gcontext; #[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] @@ -5202,1005 +2180,2592 @@ fn bindgen_test_layout__DevDesc() { "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(displayListOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(getEvent) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newFrameConfirm) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(hasTextUTF8) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(textUTF8) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidthUTF8) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(eventEnv) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(eventHelper) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveLocator) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setPattern) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(releasePattern) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setClipPath) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(releaseClipPath) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setMask) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releaseMask) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(deviceVersion) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(defineGroup) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(useGroup) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseGroup) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(stroke) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, + ); + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, + ); + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, + ); + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, + ); + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6208,8 +4773,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6217,8 +4780,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6230,14 +4791,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6247,8 +4802,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6262,11 +4815,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6278,11 +4827,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6291,11 +4836,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6304,24 +4845,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6331,18 +4866,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6351,9 +4878,7 @@ extern "C" { draster: *mut ::std::os::raw::c_uint, dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, - ); -} -extern "C" { + ); pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6362,8 +4887,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6371,8 +4894,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6381,8 +4902,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6392,8 +4911,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6403,15 +4920,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6420,8 +4931,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6432,8 +4941,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6444,8 +4951,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6453,16 +4958,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6474,55 +4975,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6530,144 +5001,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6679,28 +5058,18 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6709,8 +5078,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6718,8 +5085,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6727,15 +5092,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6745,11 +5106,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6758,8 +5115,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6767,16 +5122,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6784,15 +5135,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6809,8 +5156,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6825,8 +5170,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6841,8 +5184,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6855,8 +5196,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6870,8 +5209,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6886,8 +5223,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6900,8 +5235,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6915,8 +5248,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6931,8 +5262,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6945,8 +5274,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6960,8 +5287,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6973,8 +5298,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6985,8 +5308,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6996,8 +5317,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7010,8 +5329,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7023,8 +5340,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7042,8 +5357,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7061,8 +5374,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7080,8 +5391,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7098,8 +5407,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7114,8 +5421,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7132,32 +5437,22 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7166,8 +5461,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7175,8 +5468,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7184,8 +5475,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7193,8 +5482,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7204,16 +5491,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7230,8 +5513,6 @@ extern "C" { incy: *mut ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7249,8 +5530,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7265,8 +5544,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7278,8 +5555,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7291,8 +5566,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7306,9 +5579,7 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, arg1: usize, - ); -} -extern "C" { + ); pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7325,8 +5596,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7340,8 +5609,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7352,8 +5619,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7366,8 +5631,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7384,8 +5647,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7400,8 +5661,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7414,8 +5673,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7425,8 +5682,6 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7438,19 +5693,13 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7458,8 +5707,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7476,8 +5723,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7494,8 +5739,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7510,8 +5753,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7526,8 +5767,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7542,8 +5781,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7556,8 +5793,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7570,8 +5805,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7589,8 +5822,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7604,8 +5835,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7623,8 +5852,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7638,12 +5865,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7662,8 +5883,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7681,24 +5900,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7716,8 +5917,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7735,8 +5934,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7754,8 +5951,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7777,8 +5972,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7790,8 +5983,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7801,8 +5992,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7812,8 +6001,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7824,8 +6011,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7837,27 +6022,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7888,8 +6052,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7901,8 +6063,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7918,156 +6078,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-linux-x86_64-R4.4-devel.rs b/bindings/bindings-linux-x86_64-R4.4-devel.rs index a7844500..999e88d5 100644 --- a/bindings/bindings-linux-x86_64-R4.4-devel.rs +++ b/bindings/bindings-linux-x86_64-R4.4-devel.rs @@ -595,348 +595,86 @@ fn bindgen_test_layout__IO_FILE() { ) ); } -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -990,28 +728,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -1024,27 +740,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1056,3487 +751,767 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub nconnections: ::std::os::raw::c_int, } -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nconnections) + ) + ); } -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub nconnections: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, - 84usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nconnections) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } #[test] fn bindgen_test_layout_R_GE_gcontext() { @@ -4959,1261 +1934,2849 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(startgamma) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(cap) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polygon) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polyline) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(rect) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(path) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(raster) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(cap) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidth) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(text) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(onExit) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(getEvent) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newFrameConfirm) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(hasTextUTF8) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(textUTF8) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidthUTF8) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventEnv) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(eventHelper) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(holdflush) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveRaster) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveCapture) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveLocator) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(setPattern) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6221,8 +4784,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6230,8 +4791,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6243,14 +4802,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6260,8 +4813,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6275,11 +4826,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6291,11 +4838,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6304,11 +4847,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6317,24 +4856,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6344,18 +4877,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6365,8 +4890,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6375,8 +4898,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6384,8 +4905,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6394,8 +4913,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6405,8 +4922,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6416,15 +4931,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6433,8 +4942,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6445,8 +4952,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6457,8 +4962,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6466,16 +4969,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6487,55 +4986,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6543,144 +5012,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { - pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { + pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6692,25 +5069,13 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -6729,8 +5094,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -6748,24 +5111,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -6783,8 +5128,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6802,8 +5145,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6821,8 +5162,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -6844,8 +5183,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -6857,8 +5194,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6868,8 +5203,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6879,8 +5212,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6891,8 +5222,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -6904,27 +5233,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -6955,8 +5263,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -6968,8 +5274,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6985,156 +5289,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-macos-aarch64-R4.3.rs b/bindings/bindings-macos-aarch64-R4.3.rs index 4abe7c46..e5935557 100644 --- a/bindings/bindings-macos-aarch64-R4.3.rs +++ b/bindings/bindings-macos-aarch64-R4.3.rs @@ -550,348 +550,86 @@ fn bindgen_test_layout___sFILE() { ); } pub type FILE = __sFILE; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut f64; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -945,28 +683,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -979,27 +695,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1011,3629 +706,912 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } pub type pGEcontext = *mut R_GE_gcontext; #[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] @@ -4901,911 +1879,2714 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deviceSpecific) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(displayListOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(locator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(line) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(metricInfo) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(mode) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(text) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(onExit) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(getEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newFrameConfirm) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(hasTextUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(textUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidthUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(wantSymbolUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(deactivate) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(locator) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(line) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(metricInfo) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(mode) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newPage) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(polygon) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(polyline) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(rect) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(path) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(raster) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(cap) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(strWidth) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(text) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(onExit) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(getEvent) - ) +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut f64; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(newFrameConfirm) - ) + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(hasTextUTF8) - ) + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(textUTF8) - ) + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(strWidthUTF8) - ) + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(wantSymbolUTF8) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventEnv) - ) + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventHelper) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveRaster) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveCapture) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); -} -extern "C" { + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "Check for an available device slot"] pub fn R_CheckDeviceAvailable(); -} -extern "C" { pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); pub fn Rf_doMouseEvent( dd: pDevDesc, event: R_MouseEvent, @@ -5813,349 +4594,70 @@ extern "C" { x: f64, y: f64, ); -} -extern "C" { pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { pub static mut mbcslocale: Rboolean; -} -extern "C" { pub fn Rf_AdobeSymbol2utf8( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, nwork: usize, usePUA: Rboolean, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn Rf_utf8toAdobeSymbol( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( in_: *const ::std::os::raw::c_char, usePUA: Rboolean, ) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Translates Unicode point to UTF-8"] pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) - ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) - ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6163,8 +4665,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6172,8 +4672,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6185,14 +4683,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6202,8 +4694,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6217,11 +4707,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6233,11 +4719,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6246,11 +4728,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6259,24 +4737,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6286,18 +4758,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6307,8 +4771,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6317,8 +4779,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6326,8 +4786,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6336,8 +4794,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6347,8 +4803,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6358,15 +4812,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6375,8 +4823,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6387,8 +4833,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6399,8 +4843,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6408,16 +4850,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6429,55 +4867,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6485,144 +4893,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6634,28 +4950,18 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6664,8 +4970,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6673,8 +4977,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6682,15 +4984,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6700,11 +4998,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6713,8 +5007,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6722,16 +5014,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6739,15 +5027,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6764,8 +5048,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6780,8 +5062,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6796,8 +5076,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6810,8 +5088,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6825,8 +5101,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6841,8 +5115,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6855,8 +5127,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6870,8 +5140,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6886,8 +5154,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6900,8 +5166,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6915,8 +5179,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6928,8 +5190,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6940,8 +5200,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6951,8 +5209,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6965,8 +5221,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6978,8 +5232,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6997,8 +5249,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7016,8 +5266,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7035,8 +5283,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7053,8 +5299,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7069,8 +5313,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7087,32 +5329,22 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7121,8 +5353,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7130,8 +5360,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7139,8 +5367,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7148,8 +5374,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7159,16 +5383,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7185,8 +5405,6 @@ extern "C" { incy: *mut ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7204,8 +5422,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7220,8 +5436,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7233,8 +5447,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7246,8 +5458,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7262,8 +5472,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7280,8 +5488,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7295,8 +5501,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7307,8 +5511,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7321,8 +5523,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7339,8 +5539,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7355,8 +5553,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7369,8 +5565,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7380,8 +5574,6 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7393,19 +5585,13 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7413,8 +5599,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7431,8 +5615,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7449,8 +5631,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7465,8 +5645,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7481,8 +5659,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7497,8 +5673,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7511,8 +5685,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7525,8 +5697,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7544,8 +5714,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7559,8 +5727,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7578,8 +5744,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7593,12 +5757,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7617,8 +5775,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7636,24 +5792,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7671,8 +5809,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7690,8 +5826,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7709,8 +5843,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7732,8 +5864,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7745,8 +5875,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7756,8 +5884,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7767,8 +5893,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7779,8 +5903,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7792,27 +5914,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7843,8 +5944,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7856,8 +5955,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7873,93 +5970,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/bindings/bindings-macos-x86_64-R4.2.rs b/bindings/bindings-macos-x86_64-R4.2.rs index 784bf473..fc62d8ad 100644 --- a/bindings/bindings-macos-x86_64-R4.2.rs +++ b/bindings/bindings-macos-x86_64-R4.2.rs @@ -544,348 +544,86 @@ fn bindgen_test_layout___sFILE() { ); } pub type FILE = __sFILE; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -939,28 +677,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -973,27 +689,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1005,5096 +700,3978 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); -} -pub type pGEcontext = *mut R_GE_gcontext; -#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] -pub type DevDesc = _DevDesc; -pub type pDevDesc = *mut DevDesc; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DevDesc { - #[doc = "left raster coordinate"] - pub left: f64, - #[doc = "right raster coordinate"] - pub right: f64, - #[doc = "bottom raster coordinate"] - pub bottom: f64, - #[doc = "top raster coordinate"] - pub top: f64, - #[doc = "R only has the notion of a rectangular clipping region"] - pub clipLeft: f64, - pub clipRight: f64, - pub clipBottom: f64, - pub clipTop: f64, - #[doc = "x character addressing offset - unused"] - pub xCharOffset: f64, - #[doc = "y character addressing offset"] - pub yCharOffset: f64, - #[doc = "1/2 interline space as frac of line height"] - pub yLineBias: f64, - #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] - pub ipr: [f64; 2usize], - #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] - pub cra: [f64; 2usize], - #[doc = "(initial) Device Gamma Correction"] - pub gamma: f64, - #[doc = "Device-level clipping"] - pub canClip: Rboolean, - #[doc = "can the gamma factor be modified?"] - pub canChangeGamma: Rboolean, - #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] - pub canHAdj: ::std::os::raw::c_int, - #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] - pub startps: f64, - #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] - pub startcol: ::std::os::raw::c_int, - #[doc = "sets par(\"bg\") and gpar(\"fill\")"] - pub startfill: ::std::os::raw::c_int, - pub startlty: ::std::os::raw::c_int, - pub startfont: ::std::os::raw::c_int, - pub startgamma: f64, - #[doc = "pointer to device specific parameters"] - pub deviceSpecific: *mut ::std::os::raw::c_void, - #[doc = "toggle for initial display list status"] - pub displayListOn: Rboolean, - #[doc = "can the device generate mousedown events"] - pub canGenMouseDown: Rboolean, - #[doc = "can the device generate mousemove events"] - pub canGenMouseMove: Rboolean, - #[doc = "can the device generate mouseup events"] - pub canGenMouseUp: Rboolean, - #[doc = "can the device generate keyboard events"] - pub canGenKeybd: Rboolean, - #[doc = "can the device generate idle events"] - pub canGenIdle: Rboolean, - #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] - pub gettingEvent: Rboolean, - pub activate: ::std::option::Option, - pub circle: ::std::option::Option< - unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub clip: ::std::option::Option< - unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), - >, - pub close: ::std::option::Option, - pub deactivate: ::std::option::Option, - pub locator: ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, - >, - pub line: ::std::option::Option< - unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub metricInfo: ::std::option::Option< - unsafe extern "C" fn( - c: ::std::os::raw::c_int, - gc: pGEcontext, - ascent: *mut f64, - descent: *mut f64, - width: *mut f64, - dd: pDevDesc, - ), - >, - pub mode: - ::std::option::Option, - pub newPage: ::std::option::Option, - pub polygon: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub polyline: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub rect: ::std::option::Option< - unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub path: ::std::option::Option< - unsafe extern "C" fn( - x: *mut f64, - y: *mut f64, - npoly: ::std::os::raw::c_int, - nper: *mut ::std::os::raw::c_int, - winding: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub raster: ::std::option::Option< - unsafe extern "C" fn( - raster: *mut ::std::os::raw::c_uint, - w: ::std::os::raw::c_int, - h: ::std::os::raw::c_int, - x: f64, - y: f64, - width: f64, - height: f64, - rot: f64, - interpolate: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub cap: ::std::option::Option SEXP>, - pub size: ::std::option::Option< - unsafe extern "C" fn( - left: *mut f64, - right: *mut f64, - bottom: *mut f64, - top: *mut f64, - dd: pDevDesc, - ), - >, - pub strWidth: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub text: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub onExit: ::std::option::Option, - #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] - pub getEvent: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, - >, - pub newFrameConfirm: ::std::option::Option Rboolean>, - #[doc = "and strWidthUTF8"] - pub hasTextUTF8: Rboolean, - pub textUTF8: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub strWidthUTF8: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub wantSymbolUTF8: Rboolean, - #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] - pub useRotatedTextInContour: Rboolean, - #[doc = "This is an environment holding event handlers."] - pub eventEnv: SEXP, - pub eventHelper: - ::std::option::Option, - pub holdflush: ::std::option::Option< - unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, - >, - #[doc = "1 = no, 2 = yes"] - pub haveTransparency: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = fully, 3 = semi"] - pub haveTransparentBg: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes, 3 = except for missing values"] - pub haveRaster: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveCapture: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveLocator: ::std::os::raw::c_int, - pub setPattern: - ::std::option::Option SEXP>, - pub releasePattern: ::std::option::Option, - pub setClipPath: - ::std::option::Option SEXP>, - pub releaseClipPath: ::std::option::Option, - pub setMask: - ::std::option::Option SEXP>, - pub releaseMask: ::std::option::Option, - #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] - pub deviceVersion: ::std::os::raw::c_int, - #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] - pub deviceClip: Rboolean, - pub defineGroup: ::std::option::Option< - unsafe extern "C" fn( - source: SEXP, - op: ::std::os::raw::c_int, - destination: SEXP, - dd: pDevDesc, - ) -> SEXP, - >, - pub useGroup: - ::std::option::Option, - pub releaseGroup: ::std::option::Option, - pub stroke: - ::std::option::Option, - pub fill: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub fillStroke: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub capabilities: ::std::option::Option SEXP>, - #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] - pub reserved: [::std::os::raw::c_char; 64usize], +pub type pGEcontext = *mut R_GE_gcontext; +#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] +pub type DevDesc = _DevDesc; +pub type pDevDesc = *mut DevDesc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DevDesc { + #[doc = "left raster coordinate"] + pub left: f64, + #[doc = "right raster coordinate"] + pub right: f64, + #[doc = "bottom raster coordinate"] + pub bottom: f64, + #[doc = "top raster coordinate"] + pub top: f64, + #[doc = "R only has the notion of a rectangular clipping region"] + pub clipLeft: f64, + pub clipRight: f64, + pub clipBottom: f64, + pub clipTop: f64, + #[doc = "x character addressing offset - unused"] + pub xCharOffset: f64, + #[doc = "y character addressing offset"] + pub yCharOffset: f64, + #[doc = "1/2 interline space as frac of line height"] + pub yLineBias: f64, + #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] + pub ipr: [f64; 2usize], + #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] + pub cra: [f64; 2usize], + #[doc = "(initial) Device Gamma Correction"] + pub gamma: f64, + #[doc = "Device-level clipping"] + pub canClip: Rboolean, + #[doc = "can the gamma factor be modified?"] + pub canChangeGamma: Rboolean, + #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] + pub canHAdj: ::std::os::raw::c_int, + #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] + pub startps: f64, + #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] + pub startcol: ::std::os::raw::c_int, + #[doc = "sets par(\"bg\") and gpar(\"fill\")"] + pub startfill: ::std::os::raw::c_int, + pub startlty: ::std::os::raw::c_int, + pub startfont: ::std::os::raw::c_int, + pub startgamma: f64, + #[doc = "pointer to device specific parameters"] + pub deviceSpecific: *mut ::std::os::raw::c_void, + #[doc = "toggle for initial display list status"] + pub displayListOn: Rboolean, + #[doc = "can the device generate mousedown events"] + pub canGenMouseDown: Rboolean, + #[doc = "can the device generate mousemove events"] + pub canGenMouseMove: Rboolean, + #[doc = "can the device generate mouseup events"] + pub canGenMouseUp: Rboolean, + #[doc = "can the device generate keyboard events"] + pub canGenKeybd: Rboolean, + #[doc = "can the device generate idle events"] + pub canGenIdle: Rboolean, + #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] + pub gettingEvent: Rboolean, + pub activate: ::std::option::Option, + pub circle: ::std::option::Option< + unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub clip: ::std::option::Option< + unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), + >, + pub close: ::std::option::Option, + pub deactivate: ::std::option::Option, + pub locator: ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, + >, + pub line: ::std::option::Option< + unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub metricInfo: ::std::option::Option< + unsafe extern "C" fn( + c: ::std::os::raw::c_int, + gc: pGEcontext, + ascent: *mut f64, + descent: *mut f64, + width: *mut f64, + dd: pDevDesc, + ), + >, + pub mode: + ::std::option::Option, + pub newPage: ::std::option::Option, + pub polygon: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub polyline: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub rect: ::std::option::Option< + unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub path: ::std::option::Option< + unsafe extern "C" fn( + x: *mut f64, + y: *mut f64, + npoly: ::std::os::raw::c_int, + nper: *mut ::std::os::raw::c_int, + winding: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub raster: ::std::option::Option< + unsafe extern "C" fn( + raster: *mut ::std::os::raw::c_uint, + w: ::std::os::raw::c_int, + h: ::std::os::raw::c_int, + x: f64, + y: f64, + width: f64, + height: f64, + rot: f64, + interpolate: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub cap: ::std::option::Option SEXP>, + pub size: ::std::option::Option< + unsafe extern "C" fn( + left: *mut f64, + right: *mut f64, + bottom: *mut f64, + top: *mut f64, + dd: pDevDesc, + ), + >, + pub strWidth: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub text: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub onExit: ::std::option::Option, + #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] + pub getEvent: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, + >, + pub newFrameConfirm: ::std::option::Option Rboolean>, + #[doc = "and strWidthUTF8"] + pub hasTextUTF8: Rboolean, + pub textUTF8: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub strWidthUTF8: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub wantSymbolUTF8: Rboolean, + #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] + pub useRotatedTextInContour: Rboolean, + #[doc = "This is an environment holding event handlers."] + pub eventEnv: SEXP, + pub eventHelper: + ::std::option::Option, + pub holdflush: ::std::option::Option< + unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, + >, + #[doc = "1 = no, 2 = yes"] + pub haveTransparency: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = fully, 3 = semi"] + pub haveTransparentBg: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes, 3 = except for missing values"] + pub haveRaster: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveCapture: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveLocator: ::std::os::raw::c_int, + pub setPattern: + ::std::option::Option SEXP>, + pub releasePattern: ::std::option::Option, + pub setClipPath: + ::std::option::Option SEXP>, + pub releaseClipPath: ::std::option::Option, + pub setMask: + ::std::option::Option SEXP>, + pub releaseMask: ::std::option::Option, + #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] + pub deviceVersion: ::std::os::raw::c_int, + #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] + pub deviceClip: Rboolean, + pub defineGroup: ::std::option::Option< + unsafe extern "C" fn( + source: SEXP, + op: ::std::os::raw::c_int, + destination: SEXP, + dd: pDevDesc, + ) -> SEXP, + >, + pub useGroup: + ::std::option::Option, + pub releaseGroup: ::std::option::Option, + pub stroke: + ::std::option::Option, + pub fill: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub fillStroke: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub capabilities: ::std::option::Option SEXP>, + #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] + pub reserved: [::std::os::raw::c_char; 64usize], } #[test] fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 648usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 648usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(startfill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(startlty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(startfont) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(startgamma) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(canGenMouseMove) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(canGenMouseUp) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(canGenKeybd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(canGenIdle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(gettingEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(getEvent) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(newFrameConfirm) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(hasTextUTF8) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(textUTF8) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidthUTF8) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventEnv) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventHelper) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(holdflush) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releasePattern) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(setClipPath) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseClipPath) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(setMask) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseMask) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(deviceVersion) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, + ); + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, + ); + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6102,8 +4679,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6111,8 +4686,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6124,14 +4697,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { - pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { + pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6141,8 +4708,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6156,11 +4721,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6172,11 +4733,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6185,11 +4742,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6198,24 +4751,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6225,18 +4772,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6246,8 +4785,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6256,8 +4793,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6265,8 +4800,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6275,8 +4808,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6286,8 +4817,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6297,15 +4826,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6314,8 +4837,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6326,8 +4847,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6338,8 +4857,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6347,16 +4864,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6368,55 +4881,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6424,122 +4907,50 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6548,8 +4959,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6557,8 +4966,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6566,15 +4973,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6584,11 +4987,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6597,8 +4996,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6606,16 +5003,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6623,15 +5016,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6647,8 +5036,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6662,8 +5049,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6677,8 +5062,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6690,8 +5073,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6704,8 +5085,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6717,8 +5096,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6728,8 +5105,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6740,8 +5115,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6753,8 +5126,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6764,8 +5135,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6776,8 +5145,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6789,8 +5156,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6800,8 +5165,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6810,8 +5173,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6823,8 +5184,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6835,8 +5194,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6852,8 +5209,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6867,8 +5222,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6882,8 +5235,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6898,8 +5249,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6912,8 +5261,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6928,32 +5275,22 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -6962,8 +5299,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6971,8 +5306,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6980,8 +5313,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6989,8 +5320,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7000,16 +5329,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7025,8 +5350,6 @@ extern "C" { y: *mut Rcomplex, incy: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7042,8 +5365,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7057,8 +5378,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7070,8 +5389,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7083,8 +5400,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7097,9 +5412,7 @@ extern "C" { Rf_beta: *const Rcomplex, y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, - ); -} -extern "C" { + ); pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7114,8 +5427,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7128,8 +5439,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7139,8 +5448,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7152,8 +5459,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7168,8 +5473,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7182,8 +5485,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7195,8 +5496,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7205,8 +5504,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7217,19 +5514,13 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7237,8 +5528,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7253,8 +5542,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7269,8 +5556,6 @@ extern "C" { c: *mut Rcomplex, ldc: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7283,8 +5568,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7296,8 +5579,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7309,8 +5590,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7320,8 +5599,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7331,8 +5608,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7346,8 +5621,6 @@ extern "C" { b: *mut Rcomplex, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7358,8 +5631,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7373,8 +5644,6 @@ extern "C" { b: *mut Rcomplex, ldb: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7385,12 +5654,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7409,8 +5672,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7428,24 +5689,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7463,8 +5706,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7482,8 +5723,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7501,8 +5740,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7524,8 +5761,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7537,8 +5772,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7548,8 +5781,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7559,8 +5790,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7571,8 +5800,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7584,27 +5811,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7635,8 +5841,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7648,8 +5852,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7665,156 +5867,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-macos-x86_64-R4.3.rs b/bindings/bindings-macos-x86_64-R4.3.rs index 223ec11c..fe601dc7 100644 --- a/bindings/bindings-macos-x86_64-R4.3.rs +++ b/bindings/bindings-macos-x86_64-R4.3.rs @@ -550,348 +550,86 @@ fn bindgen_test_layout___sFILE() { ); } pub type FILE = __sFILE; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -945,28 +683,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -979,27 +695,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1011,3629 +706,912 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub __bindgen_padding_0: u32, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); } -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub __bindgen_padding_0: u32, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } pub type pGEcontext = *mut R_GE_gcontext; #[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] @@ -5157,1005 +2135,2592 @@ fn bindgen_test_layout__DevDesc() { "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(displayListOn) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(getEvent) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newFrameConfirm) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(hasTextUTF8) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(textUTF8) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidthUTF8) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(eventEnv) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(eventHelper) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveLocator) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setPattern) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(releasePattern) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setClipPath) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(releaseClipPath) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(setMask) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releaseMask) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(deviceVersion) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(defineGroup) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(useGroup) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(releaseGroup) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(stroke) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, + ); + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, + ); + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, + ); + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, + ); + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6163,8 +4728,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6172,8 +4735,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6185,14 +4746,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6202,8 +4757,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6217,11 +4770,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6233,11 +4782,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6246,11 +4791,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6259,24 +4800,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6286,18 +4821,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6306,9 +4833,7 @@ extern "C" { draster: *mut ::std::os::raw::c_uint, dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, - ); -} -extern "C" { + ); pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6317,8 +4842,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6326,8 +4849,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6336,8 +4857,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6347,8 +4866,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6358,15 +4875,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6375,8 +4886,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6387,8 +4896,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6399,8 +4906,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6408,16 +4913,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6429,55 +4930,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6485,144 +4956,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6634,28 +5013,18 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6664,8 +5033,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6673,8 +5040,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6682,15 +5047,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6700,11 +5061,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6713,8 +5070,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6722,16 +5077,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6739,15 +5090,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6764,8 +5111,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6780,8 +5125,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6796,8 +5139,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6810,8 +5151,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6825,8 +5164,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6841,8 +5178,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6855,8 +5190,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6870,8 +5203,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6886,8 +5217,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6900,8 +5229,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6915,8 +5242,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6928,8 +5253,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6940,8 +5263,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6951,8 +5272,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6965,8 +5284,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6978,8 +5295,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6997,8 +5312,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7016,8 +5329,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7035,8 +5346,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7053,8 +5362,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7069,8 +5376,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7087,32 +5392,22 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -7121,8 +5416,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7130,8 +5423,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7139,8 +5430,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7148,8 +5437,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -7159,16 +5446,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -7185,8 +5468,6 @@ extern "C" { incy: *mut ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -7204,8 +5485,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -7220,8 +5499,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7233,8 +5510,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -7246,8 +5521,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7261,9 +5534,7 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, arg1: usize, - ); -} -extern "C" { + ); pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7280,8 +5551,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7295,8 +5564,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7307,8 +5574,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7321,8 +5586,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7339,8 +5602,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7355,8 +5616,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7369,8 +5628,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7380,8 +5637,6 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -7393,19 +5648,13 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -7413,8 +5662,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7431,8 +5678,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7449,8 +5694,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7465,8 +5708,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7481,8 +5722,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7497,8 +5736,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7511,8 +5748,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7525,8 +5760,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7544,8 +5777,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7559,8 +5790,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -7578,8 +5807,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7593,12 +5820,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7617,8 +5838,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7636,24 +5855,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7671,8 +5872,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7690,8 +5889,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7709,8 +5906,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7732,8 +5927,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7745,8 +5938,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7756,8 +5947,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7767,8 +5956,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7779,8 +5966,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7792,27 +5977,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7843,8 +6007,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7856,8 +6018,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7873,156 +6033,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-macos-x86_64-R4.4-devel.rs b/bindings/bindings-macos-x86_64-R4.4-devel.rs index 0e5676cd..d87a6756 100644 --- a/bindings/bindings-macos-x86_64-R4.4-devel.rs +++ b/bindings/bindings-macos-x86_64-R4.4-devel.rs @@ -550,348 +550,86 @@ fn bindgen_test_layout___sFILE() { ); } pub type FILE = __sFILE; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -945,28 +683,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -979,27 +695,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -1011,3487 +706,767 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); +#[doc = "= 0"] +pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; +pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; +#[doc = "was === SA_RESTORE"] +pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; +pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; +pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; +pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; +pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; +#[doc = "Startup Actions"] +pub type SA_TYPE = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct structRstart { + pub R_Quiet: Rboolean, + pub R_NoEcho: Rboolean, + pub R_Interactive: Rboolean, + pub R_Verbose: Rboolean, + pub LoadSiteFile: Rboolean, + pub LoadInitFile: Rboolean, + pub DebugInitFile: Rboolean, + pub RestoreAction: SA_TYPE, + pub SaveAction: SA_TYPE, + pub vsize: usize, + pub nsize: usize, + pub max_vsize: usize, + pub max_nsize: usize, + pub ppsize: usize, + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub nconnections: ::std::os::raw::c_int, } -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +#[test] +fn bindgen_test_layout_structRstart() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 88usize, + concat!("Size of: ", stringify!(structRstart)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(structRstart)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Quiet) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_NoEcho) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Interactive) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(R_Verbose) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadSiteFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(LoadInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(DebugInitFile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(RestoreAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(SaveAction) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_vsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(max_nsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(ppsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, + 84usize, + concat!( + "Offset of field: ", + stringify!(structRstart), + "::", + stringify!(nconnections) + ) + ); } -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); +impl structRstart { + #[inline] + pub fn NoRenviron(&self) -> Rboolean { + unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } + } + #[inline] + pub fn set_NoRenviron(&mut self, val: Rboolean) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(0usize, 16u8, val as u64) + } + } + #[inline] + pub fn RstartVersion(&self) -> ::std::os::raw::c_int { + unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { + unsafe { + let val: u32 = ::std::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + NoRenviron: Rboolean, + RstartVersion: ::std::os::raw::c_int, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 16u8, { + let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; + NoRenviron as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; + RstartVersion as u64 + }); + __bindgen_bitfield_unit + } } -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); +pub type Rstart = *mut structRstart; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FlushConsole(); -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub fn Rf_onintrNoResume(); -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -#[doc = "= 0"] -pub const SA_TYPE_SA_NORESTORE: SA_TYPE = 0; -pub const SA_TYPE_SA_RESTORE: SA_TYPE = 1; -#[doc = "was === SA_RESTORE"] -pub const SA_TYPE_SA_DEFAULT: SA_TYPE = 2; -pub const SA_TYPE_SA_NOSAVE: SA_TYPE = 3; -pub const SA_TYPE_SA_SAVE: SA_TYPE = 4; -pub const SA_TYPE_SA_SAVEASK: SA_TYPE = 5; -pub const SA_TYPE_SA_SUICIDE: SA_TYPE = 6; -#[doc = "Startup Actions"] -pub type SA_TYPE = u32; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct structRstart { - pub R_Quiet: Rboolean, - pub R_NoEcho: Rboolean, - pub R_Interactive: Rboolean, - pub R_Verbose: Rboolean, - pub LoadSiteFile: Rboolean, - pub LoadInitFile: Rboolean, - pub DebugInitFile: Rboolean, - pub RestoreAction: SA_TYPE, - pub SaveAction: SA_TYPE, - pub vsize: usize, - pub nsize: usize, - pub max_vsize: usize, - pub max_nsize: usize, - pub ppsize: usize, - pub _bitfield_align_1: [u16; 0], - pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, - pub nconnections: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_structRstart() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 88usize, - concat!("Size of: ", stringify!(structRstart)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(structRstart)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Quiet) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Quiet) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_NoEcho) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_NoEcho) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Interactive) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Interactive) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).R_Verbose) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(R_Verbose) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadSiteFile) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadSiteFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).LoadInitFile) as usize - ptr as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(LoadInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DebugInitFile) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(DebugInitFile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).RestoreAction) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(RestoreAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).SaveAction) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(SaveAction) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).vsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsize) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_vsize) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_vsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).max_nsize) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(max_nsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ppsize) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(ppsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nconnections) as usize - ptr as usize }, - 84usize, - concat!( - "Offset of field: ", - stringify!(structRstart), - "::", - stringify!(nconnections) - ) - ); -} -impl structRstart { - #[inline] - pub fn NoRenviron(&self) -> Rboolean { - unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 16u8) as u32) } - } - #[inline] - pub fn set_NoRenviron(&mut self, val: Rboolean) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(0usize, 16u8, val as u64) - } - } - #[inline] - pub fn RstartVersion(&self) -> ::std::os::raw::c_int { - unsafe { ::std::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } - } - #[inline] - pub fn set_RstartVersion(&mut self, val: ::std::os::raw::c_int) { - unsafe { - let val: u32 = ::std::mem::transmute(val); - self._bitfield_1.set(16usize, 16u8, val as u64) - } - } - #[inline] - pub fn new_bitfield_1( - NoRenviron: Rboolean, - RstartVersion: ::std::os::raw::c_int, - ) -> __BindgenBitfieldUnit<[u8; 4usize]> { - let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); - __bindgen_bitfield_unit.set(0usize, 16u8, { - let NoRenviron: u32 = unsafe { ::std::mem::transmute(NoRenviron) }; - NoRenviron as u64 - }); - __bindgen_bitfield_unit.set(16usize, 16u8, { - let RstartVersion: u32 = unsafe { ::std::mem::transmute(RstartVersion) }; - RstartVersion as u64 - }); - __bindgen_bitfield_unit - } -} -pub type Rstart = *mut structRstart; -extern "C" { - pub fn R_common_command_line( - arg1: *mut ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - arg3: Rstart, - ); -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } #[test] fn bindgen_test_layout_R_GE_gcontext() { @@ -4914,1261 +1889,2849 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(startgamma) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(cap) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polygon) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polyline) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(rect) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(path) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(raster) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(cap) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidth) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(text) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(onExit) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(getEvent) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newFrameConfirm) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(hasTextUTF8) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(textUTF8) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidthUTF8) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventEnv) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(eventHelper) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(holdflush) + stringify!(i) ) ); +} +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() { + const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + ::std::mem::size_of::<__va_list_tag>(), + 24usize, + concat!("Size of: ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + ::std::mem::align_of::<__va_list_tag>(), + 8usize, + concat!("Alignment of ", stringify!(__va_list_tag)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveRaster) + stringify!(gp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, + 4usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveCapture) + stringify!(fp_offset) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(haveLocator) + stringify!(overflow_arg_area) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, + unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(__va_list_tag), "::", - stringify!(setPattern) + stringify!(reg_save_area) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) +} +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: *mut __va_list_tag); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + pub fn R_FlushConsole(); + pub fn Rf_onintr(); + pub fn Rf_onintrNoResume(); + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn R_common_command_line( + arg1: *mut ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + arg3: Rstart, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn setup_Rmainloop(); + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn CleanEd(); + pub fn R_CleanTempDir(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6176,8 +4739,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -6185,8 +4746,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -6198,14 +4757,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -6215,8 +4768,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6230,11 +4781,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -6246,11 +4793,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -6259,11 +4802,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -6272,24 +4811,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -6299,18 +4832,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -6320,8 +4845,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -6330,8 +4853,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6339,8 +4860,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -6349,8 +4868,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6360,8 +4877,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -6371,15 +4886,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -6388,8 +4897,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -6400,8 +4907,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -6412,8 +4917,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -6421,16 +4924,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -6442,55 +4941,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -6498,144 +4967,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { - pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { + pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6647,25 +5024,13 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -6684,8 +5049,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -6703,24 +5066,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -6738,8 +5083,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6757,8 +5100,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6776,8 +5117,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -6799,8 +5138,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -6812,8 +5149,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6823,8 +5158,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6834,8 +5167,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6846,8 +5177,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -6859,27 +5188,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -6910,8 +5218,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -6923,8 +5229,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6940,156 +5244,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -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() { - const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - 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::addr_of!((*ptr).gp_offset) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/bindings/bindings-windows-x86_64-R4.2.rs b/bindings/bindings-windows-x86_64-R4.2.rs index 6757c3b6..5597abaa 100644 --- a/bindings/bindings-windows-x86_64-R4.2.rs +++ b/bindings/bindings-windows-x86_64-R4.2.rs @@ -183,348 +183,86 @@ fn bindgen_test_layout__iobuf() { ); } pub type FILE = _iobuf; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -578,28 +316,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -612,27 +328,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -644,4517 +339,3615 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); -} -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_GE_gcontext() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 288usize, + concat!("Size of: ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_GE_gcontext)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(col) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lwd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lend) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ljoin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lmitre) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(cex) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(ps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(lineheight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontface) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(fontfamily) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(R_GE_gcontext), + "::", + stringify!(patternFill) + ) + ); } -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - pub fn setup_term_ui(); -} -extern "C" { - pub static mut UserBreak: ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_initapp( - arg1: ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_appcleanup(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, -} -#[test] -fn bindgen_test_layout_R_GE_gcontext() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 288usize, - concat!("Size of: ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_GE_gcontext)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).col) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(col) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fill) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(gamma) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lwd) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lwd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lty) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lend) as usize - ptr as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lend) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ljoin) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ljoin) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmitre) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lmitre) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cex) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(cex) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ps) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(ps) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lineheight) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(lineheight) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontface) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontface) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fontfamily) as usize - ptr as usize }, - 76usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(fontfamily) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).patternFill) as usize - ptr as usize }, - 280usize, - concat!( - "Offset of field: ", - stringify!(R_GE_gcontext), - "::", - stringify!(patternFill) - ) - ); -} -pub type pGEcontext = *mut R_GE_gcontext; -#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] -pub type DevDesc = _DevDesc; -pub type pDevDesc = *mut DevDesc; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DevDesc { - #[doc = "left raster coordinate"] - pub left: f64, - #[doc = "right raster coordinate"] - pub right: f64, - #[doc = "bottom raster coordinate"] - pub bottom: f64, - #[doc = "top raster coordinate"] - pub top: f64, - #[doc = "R only has the notion of a rectangular clipping region"] - pub clipLeft: f64, - pub clipRight: f64, - pub clipBottom: f64, - pub clipTop: f64, - #[doc = "x character addressing offset - unused"] - pub xCharOffset: f64, - #[doc = "y character addressing offset"] - pub yCharOffset: f64, - #[doc = "1/2 interline space as frac of line height"] - pub yLineBias: f64, - #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] - pub ipr: [f64; 2usize], - #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] - pub cra: [f64; 2usize], - #[doc = "(initial) Device Gamma Correction"] - pub gamma: f64, - #[doc = "Device-level clipping"] - pub canClip: Rboolean, - #[doc = "can the gamma factor be modified?"] - pub canChangeGamma: Rboolean, - #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] - pub canHAdj: ::std::os::raw::c_int, - #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] - pub startps: f64, - #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] - pub startcol: ::std::os::raw::c_int, - #[doc = "sets par(\"bg\") and gpar(\"fill\")"] - pub startfill: ::std::os::raw::c_int, - pub startlty: ::std::os::raw::c_int, - pub startfont: ::std::os::raw::c_int, - pub startgamma: f64, - #[doc = "pointer to device specific parameters"] - pub deviceSpecific: *mut ::std::os::raw::c_void, - #[doc = "toggle for initial display list status"] - pub displayListOn: Rboolean, - #[doc = "can the device generate mousedown events"] - pub canGenMouseDown: Rboolean, - #[doc = "can the device generate mousemove events"] - pub canGenMouseMove: Rboolean, - #[doc = "can the device generate mouseup events"] - pub canGenMouseUp: Rboolean, - #[doc = "can the device generate keyboard events"] - pub canGenKeybd: Rboolean, - #[doc = "can the device generate idle events"] - pub canGenIdle: Rboolean, - #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] - pub gettingEvent: Rboolean, - pub activate: ::std::option::Option, - pub circle: ::std::option::Option< - unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub clip: ::std::option::Option< - unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), - >, - pub close: ::std::option::Option, - pub deactivate: ::std::option::Option, - pub locator: ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, - >, - pub line: ::std::option::Option< - unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub metricInfo: ::std::option::Option< - unsafe extern "C" fn( - c: ::std::os::raw::c_int, - gc: pGEcontext, - ascent: *mut f64, - descent: *mut f64, - width: *mut f64, - dd: pDevDesc, - ), - >, - pub mode: - ::std::option::Option, - pub newPage: ::std::option::Option, - pub polygon: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub polyline: ::std::option::Option< - unsafe extern "C" fn( - n: ::std::os::raw::c_int, - x: *mut f64, - y: *mut f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub rect: ::std::option::Option< - unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), - >, - pub path: ::std::option::Option< - unsafe extern "C" fn( - x: *mut f64, - y: *mut f64, - npoly: ::std::os::raw::c_int, - nper: *mut ::std::os::raw::c_int, - winding: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub raster: ::std::option::Option< - unsafe extern "C" fn( - raster: *mut ::std::os::raw::c_uint, - w: ::std::os::raw::c_int, - h: ::std::os::raw::c_int, - x: f64, - y: f64, - width: f64, - height: f64, - rot: f64, - interpolate: Rboolean, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub cap: ::std::option::Option SEXP>, - pub size: ::std::option::Option< - unsafe extern "C" fn( - left: *mut f64, - right: *mut f64, - bottom: *mut f64, - top: *mut f64, - dd: pDevDesc, - ), - >, - pub strWidth: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub text: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub onExit: ::std::option::Option, - #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] - pub getEvent: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, - >, - pub newFrameConfirm: ::std::option::Option Rboolean>, - #[doc = "and strWidthUTF8"] - pub hasTextUTF8: Rboolean, - pub textUTF8: ::std::option::Option< - unsafe extern "C" fn( - x: f64, - y: f64, - str_: *const ::std::os::raw::c_char, - rot: f64, - hadj: f64, - gc: pGEcontext, - dd: pDevDesc, - ), - >, - pub strWidthUTF8: ::std::option::Option< - unsafe extern "C" fn( - str_: *const ::std::os::raw::c_char, - gc: pGEcontext, - dd: pDevDesc, - ) -> f64, - >, - pub wantSymbolUTF8: Rboolean, - #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] - pub useRotatedTextInContour: Rboolean, - #[doc = "This is an environment holding event handlers."] - pub eventEnv: SEXP, - pub eventHelper: - ::std::option::Option, - pub holdflush: ::std::option::Option< - unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, - >, - #[doc = "1 = no, 2 = yes"] - pub haveTransparency: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = fully, 3 = semi"] - pub haveTransparentBg: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes, 3 = except for missing values"] - pub haveRaster: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveCapture: ::std::os::raw::c_int, - #[doc = "1 = no, 2 = yes"] - pub haveLocator: ::std::os::raw::c_int, - pub setPattern: - ::std::option::Option SEXP>, - pub releasePattern: ::std::option::Option, - pub setClipPath: - ::std::option::Option SEXP>, - pub releaseClipPath: ::std::option::Option, - pub setMask: - ::std::option::Option SEXP>, - pub releaseMask: ::std::option::Option, - #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] - pub deviceVersion: ::std::os::raw::c_int, - #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] - pub deviceClip: Rboolean, - pub defineGroup: ::std::option::Option< - unsafe extern "C" fn( - source: SEXP, - op: ::std::os::raw::c_int, - destination: SEXP, - dd: pDevDesc, - ) -> SEXP, - >, - pub useGroup: - ::std::option::Option, - pub releaseGroup: ::std::option::Option, - pub stroke: - ::std::option::Option, - pub fill: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub fillStroke: ::std::option::Option< - unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), - >, - pub capabilities: ::std::option::Option SEXP>, - #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] - pub reserved: [::std::os::raw::c_char; 64usize], +pub type pGEcontext = *mut R_GE_gcontext; +#[doc = "--------- New (in 1.4.0) device driver structure ---------\n NOTES:\n 1. All locations and dimensions are in device coordinates.\n 2. I found this comment in the doc for dev_Open -- looks nasty\n Any known instances of such a thing happening? Should be\n replaced by a function to query the device for preferred gpars\n settings? (to be called when the device is initialised)\n\n NOTE that it is perfectly acceptable for this\n function to set generic graphics parameters too\n (i.e., override the generic parameter settings\n which GInit sets up) all at the author's own risk\n of course :)\n\n 3. Do we really need dev_StrWidth as well as dev_MetricInfo?\n I can see the difference between the two -- its just a\n question of whether dev_MetricInfo should just return\n what dev_StrWidth would give if font metric information is\n not available. I guess having both allows the developer\n to decide when to ask for which sort of value, and to decide\n what to do when font metric information is not available.\n And why not a dev_StrHeight?\n 4. Should \"ipr\", \"asp\", and \"cra\" be in the device description?\n If not, then where?\n I guess they don't need to be if no device makes use of them.\n On the other hand, they would need to be replaced by a device\n call that R base graphics could use to get enough information\n to figure them out. (e.g., some sort of dpi() function to\n complement the size() function.)"] +pub type DevDesc = _DevDesc; +pub type pDevDesc = *mut DevDesc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DevDesc { + #[doc = "left raster coordinate"] + pub left: f64, + #[doc = "right raster coordinate"] + pub right: f64, + #[doc = "bottom raster coordinate"] + pub bottom: f64, + #[doc = "top raster coordinate"] + pub top: f64, + #[doc = "R only has the notion of a rectangular clipping region"] + pub clipLeft: f64, + pub clipRight: f64, + pub clipBottom: f64, + pub clipTop: f64, + #[doc = "x character addressing offset - unused"] + pub xCharOffset: f64, + #[doc = "y character addressing offset"] + pub yCharOffset: f64, + #[doc = "1/2 interline space as frac of line height"] + pub yLineBias: f64, + #[doc = "Inches per raster; \\[0\\]=x, \\[1\\]=y"] + pub ipr: [f64; 2usize], + #[doc = "Character size in rasters; \\[0\\]=x, \\[1\\]=y"] + pub cra: [f64; 2usize], + #[doc = "(initial) Device Gamma Correction"] + pub gamma: f64, + #[doc = "Device-level clipping"] + pub canClip: Rboolean, + #[doc = "can the gamma factor be modified?"] + pub canChangeGamma: Rboolean, + #[doc = "Can do at least some horiz adjust of text\n0 = none, 1 = {0,0.5,1}, 2 = \\[0,1\\]"] + pub canHAdj: ::std::os::raw::c_int, + #[doc = "Device initial settings\n/\n/* These are things that the device must set up when it is created.\n The graphics system can modify them and track current values,"] + pub startps: f64, + #[doc = "sets par(\"fg\"), par(\"col\") and gpar(\"col\")"] + pub startcol: ::std::os::raw::c_int, + #[doc = "sets par(\"bg\") and gpar(\"fill\")"] + pub startfill: ::std::os::raw::c_int, + pub startlty: ::std::os::raw::c_int, + pub startfont: ::std::os::raw::c_int, + pub startgamma: f64, + #[doc = "pointer to device specific parameters"] + pub deviceSpecific: *mut ::std::os::raw::c_void, + #[doc = "toggle for initial display list status"] + pub displayListOn: Rboolean, + #[doc = "can the device generate mousedown events"] + pub canGenMouseDown: Rboolean, + #[doc = "can the device generate mousemove events"] + pub canGenMouseMove: Rboolean, + #[doc = "can the device generate mouseup events"] + pub canGenMouseUp: Rboolean, + #[doc = "can the device generate keyboard events"] + pub canGenKeybd: Rboolean, + #[doc = "can the device generate idle events"] + pub canGenIdle: Rboolean, + #[doc = "This is set while getGraphicsEvent\nis actively looking for events"] + pub gettingEvent: Rboolean, + pub activate: ::std::option::Option, + pub circle: ::std::option::Option< + unsafe extern "C" fn(x: f64, y: f64, r: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub clip: ::std::option::Option< + unsafe extern "C" fn(x0: f64, x1: f64, y0: f64, y1: f64, dd: pDevDesc), + >, + pub close: ::std::option::Option, + pub deactivate: ::std::option::Option, + pub locator: ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, y: *mut f64, dd: pDevDesc) -> Rboolean, + >, + pub line: ::std::option::Option< + unsafe extern "C" fn(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub metricInfo: ::std::option::Option< + unsafe extern "C" fn( + c: ::std::os::raw::c_int, + gc: pGEcontext, + ascent: *mut f64, + descent: *mut f64, + width: *mut f64, + dd: pDevDesc, + ), + >, + pub mode: + ::std::option::Option, + pub newPage: ::std::option::Option, + pub polygon: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub polyline: ::std::option::Option< + unsafe extern "C" fn( + n: ::std::os::raw::c_int, + x: *mut f64, + y: *mut f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub rect: ::std::option::Option< + unsafe extern "C" fn(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pDevDesc), + >, + pub path: ::std::option::Option< + unsafe extern "C" fn( + x: *mut f64, + y: *mut f64, + npoly: ::std::os::raw::c_int, + nper: *mut ::std::os::raw::c_int, + winding: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub raster: ::std::option::Option< + unsafe extern "C" fn( + raster: *mut ::std::os::raw::c_uint, + w: ::std::os::raw::c_int, + h: ::std::os::raw::c_int, + x: f64, + y: f64, + width: f64, + height: f64, + rot: f64, + interpolate: Rboolean, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub cap: ::std::option::Option SEXP>, + pub size: ::std::option::Option< + unsafe extern "C" fn( + left: *mut f64, + right: *mut f64, + bottom: *mut f64, + top: *mut f64, + dd: pDevDesc, + ), + >, + pub strWidth: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub text: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub onExit: ::std::option::Option, + #[doc = "device_getEvent is no longer used, but the slot is kept for back\n compatibility of the structure."] + pub getEvent: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> SEXP, + >, + pub newFrameConfirm: ::std::option::Option Rboolean>, + #[doc = "and strWidthUTF8"] + pub hasTextUTF8: Rboolean, + pub textUTF8: ::std::option::Option< + unsafe extern "C" fn( + x: f64, + y: f64, + str_: *const ::std::os::raw::c_char, + rot: f64, + hadj: f64, + gc: pGEcontext, + dd: pDevDesc, + ), + >, + pub strWidthUTF8: ::std::option::Option< + unsafe extern "C" fn( + str_: *const ::std::os::raw::c_char, + gc: pGEcontext, + dd: pDevDesc, + ) -> f64, + >, + pub wantSymbolUTF8: Rboolean, + #[doc = "Is rotated text good enough to be preferable to Hershey in\ncontour labels? Old default was FALSE."] + pub useRotatedTextInContour: Rboolean, + #[doc = "This is an environment holding event handlers."] + pub eventEnv: SEXP, + pub eventHelper: + ::std::option::Option, + pub holdflush: ::std::option::Option< + unsafe extern "C" fn(dd: pDevDesc, level: ::std::os::raw::c_int) -> ::std::os::raw::c_int, + >, + #[doc = "1 = no, 2 = yes"] + pub haveTransparency: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = fully, 3 = semi"] + pub haveTransparentBg: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes, 3 = except for missing values"] + pub haveRaster: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveCapture: ::std::os::raw::c_int, + #[doc = "1 = no, 2 = yes"] + pub haveLocator: ::std::os::raw::c_int, + pub setPattern: + ::std::option::Option SEXP>, + pub releasePattern: ::std::option::Option, + pub setClipPath: + ::std::option::Option SEXP>, + pub releaseClipPath: ::std::option::Option, + pub setMask: + ::std::option::Option SEXP>, + pub releaseMask: ::std::option::Option, + #[doc = "This should match R_GE_version,\n BUT it does not have to.\n It give the graphics engine a chance to work with\n graphics device packages BEFORE they update to\n changes in R_GE_version."] + pub deviceVersion: ::std::os::raw::c_int, + #[doc = "This can be used to OVERRIDE canClip so that graphics engine\n leaves ALL clipping to the graphics device"] + pub deviceClip: Rboolean, + pub defineGroup: ::std::option::Option< + unsafe extern "C" fn( + source: SEXP, + op: ::std::os::raw::c_int, + destination: SEXP, + dd: pDevDesc, + ) -> SEXP, + >, + pub useGroup: + ::std::option::Option, + pub releaseGroup: ::std::option::Option, + pub stroke: + ::std::option::Option, + pub fill: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub fillStroke: ::std::option::Option< + unsafe extern "C" fn(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pDevDesc), + >, + pub capabilities: ::std::option::Option SEXP>, + #[doc = "Area for future expansion.\nBy zeroing this, devices are more likely to work if loaded\ninto a later version of R than that they were compiled under."] + pub reserved: [::std::os::raw::c_char; 64usize], } #[test] fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 648usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 648usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseDown) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseMove) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenMouseUp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenKeybd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(line) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(metricInfo) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(mode) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(newPage) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polygon) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polyline) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(rect) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(path) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(raster) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(cap) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidth) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(text) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(onExit) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(getEvent) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newFrameConfirm) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(hasTextUTF8) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(textUTF8) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(strWidthUTF8) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(wantSymbolUTF8) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventEnv) - ) + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(eventHelper) - ) + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveRaster) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveCapture) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, + ); + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn setup_Rmainloop(); + pub fn CleanEd(); + pub fn R_CleanTempDir(); + pub fn setup_term_ui(); + pub static mut UserBreak: ::std::os::raw::c_int; + pub fn GA_initapp( + arg1: ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn GA_appcleanup(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, + ); + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, + ); + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, + ); + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); pub fn Rf_doMouseEvent( dd: pDevDesc, event: R_MouseEvent, @@ -5162,352 +3955,71 @@ extern "C" { x: f64, y: f64, ); -} -extern "C" { pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_onintr(); -} -extern "C" { pub static mut mbcslocale: Rboolean; -} -extern "C" { pub fn Rf_AdobeSymbol2utf8( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, nwork: usize, usePUA: Rboolean, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn Rf_utf8toAdobeSymbol( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( in_: *const ::std::os::raw::c_char, usePUA: Rboolean, ) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Translates Unicode point to UTF-8"] pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid tranversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) - ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) - ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5515,8 +4027,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -5524,8 +4034,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5537,14 +4045,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -5554,8 +4056,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5569,11 +4069,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -5585,11 +4081,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -5598,11 +4090,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -5611,24 +4099,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -5638,18 +4120,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -5659,8 +4133,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -5669,8 +4141,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5678,8 +4148,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5688,8 +4156,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5699,8 +4165,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5710,15 +4174,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -5727,8 +4185,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -5739,8 +4195,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -5751,8 +4205,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -5760,16 +4212,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -5781,55 +4229,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -5837,122 +4255,50 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -5961,8 +4307,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -5970,8 +4314,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -5979,15 +4321,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -5997,11 +4335,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6010,8 +4344,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6019,16 +4351,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6036,15 +4364,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6060,8 +4384,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6075,8 +4397,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6090,8 +4410,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6103,8 +4421,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6117,8 +4433,6 @@ extern "C" { y: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6130,8 +4444,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6141,8 +4453,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6153,8 +4463,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6166,8 +4474,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6177,8 +4483,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6189,8 +4493,6 @@ extern "C" { x: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6202,8 +4504,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6213,8 +4513,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6223,8 +4521,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6236,8 +4532,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6248,8 +4542,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut f64, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6265,8 +4557,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6280,8 +4570,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6295,8 +4583,6 @@ extern "C" { b: *mut f64, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6311,8 +4597,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6325,8 +4609,6 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6341,32 +4623,22 @@ extern "C" { c: *mut f64, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -6375,8 +4647,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6384,8 +4654,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6393,8 +4661,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6402,8 +4668,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6413,16 +4677,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -6438,8 +4698,6 @@ extern "C" { y: *mut Rcomplex, incy: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6455,8 +4713,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6470,8 +4726,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6483,8 +4737,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6496,8 +4748,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6511,8 +4761,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6527,8 +4775,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6541,8 +4787,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6552,8 +4796,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6565,8 +4807,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6581,8 +4821,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6595,8 +4833,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6608,8 +4844,6 @@ extern "C" { y: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6618,8 +4852,6 @@ extern "C" { incx: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6630,19 +4862,13 @@ extern "C" { incy: *const ::std::os::raw::c_int, ap: *mut Rcomplex, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -6650,8 +4876,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6666,8 +4890,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6682,8 +4904,6 @@ extern "C" { c: *mut Rcomplex, ldc: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6696,8 +4916,6 @@ extern "C" { c: *mut Rcomplex, ldc: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6709,8 +4927,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6722,8 +4938,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6733,8 +4947,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6744,8 +4956,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6759,8 +4969,6 @@ extern "C" { b: *mut Rcomplex, ldb: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6771,8 +4979,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6786,8 +4992,6 @@ extern "C" { b: *mut Rcomplex, ldb: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6798,12 +5002,6 @@ extern "C" { x: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -6822,8 +5020,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -6841,24 +5037,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -6876,8 +5054,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6895,8 +5071,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6914,8 +5088,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -6937,8 +5109,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -6950,8 +5120,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6961,8 +5129,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6972,8 +5138,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6984,8 +5148,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -6997,27 +5159,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7048,8 +5189,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7061,8 +5200,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7078,93 +5215,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/bindings/bindings-windows-x86_64-R4.3.rs b/bindings/bindings-windows-x86_64-R4.3.rs index 0facca69..d87bb8a1 100644 --- a/bindings/bindings-windows-x86_64-R4.3.rs +++ b/bindings/bindings-windows-x86_64-R4.3.rs @@ -189,348 +189,86 @@ fn bindgen_test_layout__iobuf() { ); } pub type FILE = _iobuf; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -584,28 +322,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -618,27 +334,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -650,3245 +345,529 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); -} -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - pub fn setup_term_ui(); -} -extern "C" { - pub static mut UserBreak: ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_initapp( - arg1: ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_appcleanup(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } #[test] fn bindgen_test_layout_R_GE_gcontext() { @@ -4311,911 +1290,2713 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(deviceSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(canGenMouseMove) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(canGenMouseUp) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(canGenKeybd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canGenIdle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gettingEvent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(activate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(circle) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deactivate) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(locator) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(line) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(metricInfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(newPage) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polygon) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(polyline) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(rect) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(path) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(raster) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(hasTextUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(textUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(strWidthUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(wantSymbolUTF8) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(useRotatedTextInContour) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(polygon) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(polyline) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(rect) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(path) - ) + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(raster) - ) + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(cap) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(size) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidth) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(text) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(onExit) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(getEvent) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(newFrameConfirm) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(hasTextUTF8) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(textUTF8) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(strWidthUTF8) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(wantSymbolUTF8) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useRotatedTextInContour) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(eventEnv) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(eventHelper) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(holdflush) - ) +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, + ); + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ); + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, + ); + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, + ); + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparency) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveTransparentBg) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveRaster) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveCapture) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(haveLocator) - ) + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn setup_Rmainloop(); + pub fn CleanEd(); + pub fn R_CleanTempDir(); + pub fn setup_term_ui(); + pub static mut UserBreak: ::std::os::raw::c_int; + pub fn GA_initapp( + arg1: ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn GA_appcleanup(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setClipPath) - ) + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseClipPath) - ) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); -} -extern "C" { + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "Check for an available device slot"] pub fn R_CheckDeviceAvailable(); -} -extern "C" { pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); pub fn Rf_doMouseEvent( dd: pDevDesc, event: R_MouseEvent, @@ -5223,352 +4004,71 @@ extern "C" { x: f64, y: f64, ); -} -extern "C" { pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_onintr(); -} -extern "C" { pub static mut mbcslocale: Rboolean; -} -extern "C" { pub fn Rf_AdobeSymbol2utf8( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, nwork: usize, usePUA: Rboolean, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn Rf_utf8toAdobeSymbol( out: *mut ::std::os::raw::c_char, in_: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( in_: *const ::std::os::raw::c_char, usePUA: Rboolean, ) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Translates Unicode point to UTF-8"] pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) - ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) - ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5576,8 +4076,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -5585,8 +4083,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5598,14 +4094,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -5615,8 +4105,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5630,11 +4118,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -5646,11 +4130,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -5659,11 +4139,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -5672,24 +4148,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -5699,18 +4169,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -5720,8 +4182,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -5730,8 +4190,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5739,8 +4197,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5749,8 +4205,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5760,8 +4214,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5771,15 +4223,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -5788,8 +4234,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -5800,8 +4244,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -5812,8 +4254,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -5821,16 +4261,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -5842,55 +4278,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -5898,144 +4304,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6047,28 +4361,18 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -extern "C" { pub fn dasum_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn daxpy_( n: *const ::std::os::raw::c_int, da: *const f64, @@ -6077,8 +4381,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dcopy_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6086,8 +4388,6 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn ddot_( n: *const ::std::os::raw::c_int, dx: *const f64, @@ -6095,15 +4395,11 @@ extern "C" { dy: *const f64, incy: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dnrm2_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn drot_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6113,11 +4409,7 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn drotg_(a: *const f64, b: *const f64, c: *mut f64, s: *mut f64); -} -extern "C" { pub fn drotm_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6126,8 +4418,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, dparam: *const f64, ); -} -extern "C" { pub fn drotmg_( dd1: *const f64, dd2: *const f64, @@ -6135,16 +4425,12 @@ extern "C" { dy1: *const f64, param: *mut f64, ); -} -extern "C" { pub fn dscal_( n: *const ::std::os::raw::c_int, alpha: *const f64, dx: *mut f64, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dswap_( n: *const ::std::os::raw::c_int, dx: *mut f64, @@ -6152,15 +4438,11 @@ extern "C" { dy: *mut f64, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn idamax_( n: *const ::std::os::raw::c_int, dx: *const f64, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn dgbmv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6177,8 +4459,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6193,8 +4473,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6209,8 +4487,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6223,8 +4499,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dsymv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6238,8 +4512,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dtbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6254,8 +4526,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6268,8 +4538,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6283,8 +4551,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6299,8 +4565,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6313,8 +4577,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dtrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6328,8 +4590,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn dger_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6341,8 +4601,6 @@ extern "C" { a: *mut f64, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn dsyr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6353,8 +4611,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6364,8 +4620,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dsyr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6378,8 +4632,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn dspr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6391,8 +4643,6 @@ extern "C" { ap: *mut f64, arg1: usize, ); -} -extern "C" { pub fn dgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6410,8 +4660,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dtrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6429,8 +4677,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dtrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6448,8 +4694,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn dsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6466,8 +4710,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6482,8 +4724,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6500,32 +4740,22 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn dcabs1_(z: *const Rcomplex) -> f64; -} -extern "C" { pub fn dzasum_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn dznrm2_( n: *const ::std::os::raw::c_int, x: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> f64; -} -extern "C" { pub fn izamax_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, incx: *const ::std::os::raw::c_int, ) -> ::std::os::raw::c_int; -} -extern "C" { pub fn zaxpy_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, @@ -6534,8 +4764,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zcopy_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6543,8 +4771,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zdotc_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6552,8 +4778,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdotu_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6561,8 +4785,6 @@ extern "C" { zy: *const Rcomplex, incy: *const ::std::os::raw::c_int, ) -> Rcomplex; -} -extern "C" { pub fn zdrot_( n: *const ::std::os::raw::c_int, zx: *const Rcomplex, @@ -6572,16 +4794,12 @@ extern "C" { c: *const f64, s: *const f64, ); -} -extern "C" { pub fn zdscal_( n: *const ::std::os::raw::c_int, da: *const f64, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgbmv_( trans: *const ::std::os::raw::c_char, m: *mut ::std::os::raw::c_int, @@ -6598,8 +4816,6 @@ extern "C" { incy: *mut ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgemm_( transa: *const ::std::os::raw::c_char, transb: *const ::std::os::raw::c_char, @@ -6617,8 +4833,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zgemv_( trans: *const ::std::os::raw::c_char, m: *const ::std::os::raw::c_int, @@ -6633,8 +4847,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zgerc_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6646,8 +4858,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zgeru_( m: *const ::std::os::raw::c_int, n: *const ::std::os::raw::c_int, @@ -6659,8 +4869,6 @@ extern "C" { a: *mut Rcomplex, lda: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zhbmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6675,8 +4883,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhemm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6693,8 +4899,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhemv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6708,8 +4912,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6720,8 +4922,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6734,8 +4934,6 @@ extern "C" { lda: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zher2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6752,8 +4950,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zherk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6768,8 +4964,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zhpmv_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6782,8 +4976,6 @@ extern "C" { incy: *const ::std::os::raw::c_int, arg1: usize, ); -} -extern "C" { pub fn zhpr_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6793,8 +4985,6 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zhpr2_( uplo: *const ::std::os::raw::c_char, n: *const ::std::os::raw::c_int, @@ -6806,19 +4996,13 @@ extern "C" { ap: *mut Rcomplex, arg1: usize, ); -} -extern "C" { pub fn zrotg_(ca: *const Rcomplex, cb: *const Rcomplex, c: *mut f64, s: *mut Rcomplex); -} -extern "C" { pub fn zscal_( n: *const ::std::os::raw::c_int, za: *const Rcomplex, zx: *mut Rcomplex, incx: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zswap_( n: *const ::std::os::raw::c_int, zx: *mut Rcomplex, @@ -6826,8 +5010,6 @@ extern "C" { zy: *mut Rcomplex, incy: *const ::std::os::raw::c_int, ); -} -extern "C" { pub fn zsymm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6844,8 +5026,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyr2k_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6862,8 +5042,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn zsyrk_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6878,8 +5056,6 @@ extern "C" { arg1: usize, arg2: usize, ); -} -extern "C" { pub fn ztbmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6894,8 +5070,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztbsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6910,8 +5084,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6924,8 +5096,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztpsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6938,8 +5108,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrmm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6957,8 +5125,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrmv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -6972,8 +5138,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -extern "C" { pub fn ztrsm_( side: *const ::std::os::raw::c_char, uplo: *const ::std::os::raw::c_char, @@ -6991,8 +5155,6 @@ extern "C" { arg3: usize, arg4: usize, ); -} -extern "C" { pub fn ztrsv_( uplo: *const ::std::os::raw::c_char, trans: *const ::std::os::raw::c_char, @@ -7006,12 +5168,6 @@ extern "C" { arg2: usize, arg3: usize, ); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -7030,8 +5186,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -7049,24 +5203,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -7084,8 +5220,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7103,8 +5237,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -7122,8 +5254,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -7145,8 +5275,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -7158,8 +5286,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7169,8 +5295,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7180,8 +5304,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7192,8 +5314,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -7205,27 +5325,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -7256,8 +5355,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -7269,8 +5366,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -7286,93 +5381,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/bindings/bindings-windows-x86_64-R4.4-devel.rs b/bindings/bindings-windows-x86_64-R4.4-devel.rs index 43c6c872..fa4ff389 100644 --- a/bindings/bindings-windows-x86_64-R4.4-devel.rs +++ b/bindings/bindings-windows-x86_64-R4.4-devel.rs @@ -189,348 +189,86 @@ fn bindgen_test_layout__iobuf() { ); } pub type FILE = _iobuf; -extern "C" { - #[doc = "IEEE NaN"] - pub static mut R_NaN: f64; -} -extern "C" { - #[doc = "IEEE Inf"] - pub static mut R_PosInf: f64; -} -extern "C" { - #[doc = "IEEE -Inf"] - pub static mut R_NegInf: f64; -} -extern "C" { - #[doc = "NA_REAL: IEEE"] - pub static mut R_NaReal: f64; -} -extern "C" { - #[doc = "NA_INTEGER:= INT_MIN currently"] - pub static mut R_NaInt: ::std::os::raw::c_int; -} -extern "C" { - #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] - pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; -} #[doc = ", MAYBE"] pub const Rboolean_FALSE: Rboolean = 0; #[doc = ", MAYBE"] pub const Rboolean_TRUE: Rboolean = 1; pub type Rboolean = u32; -extern "C" { - pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; -} -extern "C" { - pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn vmaxget() -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn vmaxset(arg1: *const ::std::os::raw::c_void); -} -extern "C" { - pub fn R_gc(); -} -extern "C" { - pub fn R_gc_running() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_allocLD(nelem: usize) -> *mut u128; -} -extern "C" { - pub fn S_alloc( - arg1: ::std::os::raw::c_long, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn S_realloc( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_long, - arg4: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_realloc_gc( - arg1: *mut ::std::os::raw::c_void, - arg2: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - #[doc = "../../main/sort.c :"] - pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); +#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] +pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; +pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, + pub types: *mut R_NativePrimitiveArgType, } -extern "C" { - pub fn rsort_with_index( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, +#[test] +fn bindgen_test_layout_R_CMethodDef() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 32usize, + concat!("Size of: ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_revsort( - arg1: *mut f64, - arg2: *mut ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_CMethodDef)) ); -} -extern "C" { - pub fn Rf_iPsort( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(name) + ) ); -} -extern "C" { - pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] - pub fn R_qsort(v: *mut f64, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_I( - v: *mut f64, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(fun) + ) ); -} -extern "C" { - pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); -} -extern "C" { - pub fn R_qsort_int_I( - iv: *mut ::std::os::raw::c_int, - II: *mut ::std::os::raw::c_int, - i: ::std::os::raw::c_int, - j: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(numArgs) + ) ); -} -extern "C" { - #[doc = "../../main/util.c and others :"] - pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_setIVector( - arg1: *mut ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_CMethodDef), + "::", + stringify!(types) + ) ); } -extern "C" { - pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); -} -extern "C" { - pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] - pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) - -> f64; -} -extern "C" { - pub fn R_tmpnam( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_tmpnam2( - prefix: *const ::std::os::raw::c_char, - tempdir: *const ::std::os::raw::c_char, - fileext: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn R_CheckUserInterrupt(); -} -extern "C" { - pub fn R_CheckStack(); -} -extern "C" { - pub fn R_CheckStack2(arg1: usize); -} -extern "C" { - #[doc = "../../appl/interv.c: also in Applic.h"] - pub fn findInterval( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn findInterval2( - xt: *mut f64, - n: ::std::os::raw::c_int, - x: f64, - rightmost_closed: Rboolean, - all_inside: Rboolean, - left_open: Rboolean, - ilo: ::std::os::raw::c_int, - mflag: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn find_interv_vec( - xt: *mut f64, - n: *mut ::std::os::raw::c_int, - x: *mut f64, - nx: *mut ::std::os::raw::c_int, - rightmost_closed: *mut ::std::os::raw::c_int, - all_inside: *mut ::std::os::raw::c_int, - indx: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - #[doc = "../../appl/maxcol.c: also in Applic.h"] - pub fn R_max_col( - matrix: *mut f64, - nr: *mut ::std::os::raw::c_int, - nc: *mut ::std::os::raw::c_int, - maxes: *mut ::std::os::raw::c_int, - ties_meth: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -extern "C" { - pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); -} -#[doc = "Called with a variable argument set after casting to a compatible\nfunction pointer."] -pub type DL_FUNC = ::std::option::Option *mut ::std::os::raw::c_void>; -pub type R_NativePrimitiveArgType = ::std::os::raw::c_uint; -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, - pub types: *mut R_NativePrimitiveArgType, -} -#[test] -fn bindgen_test_layout_R_CMethodDef() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(R_CMethodDef)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_CMethodDef)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fun) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(fun) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).numArgs) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(numArgs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).types) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_CMethodDef), - "::", - stringify!(types) - ) - ); -} -#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] -pub type R_FortranMethodDef = R_CMethodDef; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_CallMethodDef { - pub name: *const ::std::os::raw::c_char, - pub fun: DL_FUNC, - pub numArgs: ::std::os::raw::c_int, +#[doc = "These are very similar to those in Rdynpriv.h,\nbut we maintain them separately to give us more freedom to do\nsome computations on the internal versions that are derived from\nthese definitions."] +pub type R_FortranMethodDef = R_CMethodDef; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_CallMethodDef { + pub name: *const ::std::os::raw::c_char, + pub fun: DL_FUNC, + pub numArgs: ::std::os::raw::c_int, } #[test] fn bindgen_test_layout_R_CallMethodDef() { @@ -584,28 +322,6 @@ pub struct _DllInfo { _unused: [u8; 0], } pub type DllInfo = _DllInfo; -extern "C" { - pub fn R_registerRoutines( - info: *mut DllInfo, - croutines: *const R_CMethodDef, - callRoutines: *const R_CallMethodDef, - fortranRoutines: *const R_FortranMethodDef, - externalRoutines: *const R_ExternalMethodDef, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; -} -extern "C" { - pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; -} -extern "C" { - #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] - pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; -} #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Rf_RegisteredNativeSymbol { @@ -618,27 +334,6 @@ pub const NativeSymbolType_R_CALL_SYM: NativeSymbolType = 2; pub const NativeSymbolType_R_FORTRAN_SYM: NativeSymbolType = 3; pub const NativeSymbolType_R_EXTERNAL_SYM: NativeSymbolType = 4; pub type NativeSymbolType = u32; -extern "C" { - pub fn R_FindSymbol( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - symbol: *mut R_RegisteredNativeSymbol, - ) -> DL_FUNC; -} -extern "C" { - #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] - pub fn R_RegisterCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - fptr: DL_FUNC, - ); -} -extern "C" { - pub fn R_GetCCallable( - package: *const ::std::os::raw::c_char, - name: *const ::std::os::raw::c_char, - ) -> DL_FUNC; -} pub type Rbyte = ::std::os::raw::c_uchar; #[doc = "type for length of (standard, not long) vectors etc"] pub type R_len_t = ::std::os::raw::c_int; @@ -650,3248 +345,529 @@ pub struct SEXPREC { _unused: [u8; 0], } pub type SEXP = *mut SEXPREC; -extern "C" { - pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Various tests with macro versions in the internal headers"] - pub fn Rf_isNull(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isSymbol(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLogical(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isReal(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isComplex(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isExpression(s: SEXP) -> Rboolean; +#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] +pub type PROTECT_INDEX = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_allocator { + _unused: [u8; 0], } -extern "C" { - pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; +pub type R_allocator_t = R_allocator; +pub const nchar_type_Bytes: nchar_type = 0; +pub const nchar_type_Chars: nchar_type = 1; +pub const nchar_type_Width: nchar_type = 2; +#[doc = "../main/character.c :"] +pub type nchar_type = u32; +pub const cetype_t_CE_NATIVE: cetype_t = 0; +pub const cetype_t_CE_UTF8: cetype_t = 1; +pub const cetype_t_CE_LATIN1: cetype_t = 2; +pub const cetype_t_CE_BYTES: cetype_t = 3; +pub const cetype_t_CE_SYMBOL: cetype_t = 5; +pub const cetype_t_CE_ANY: cetype_t = 99; +#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] +pub type cetype_t = u32; +#[doc = "Finalization interface"] +pub type R_CFinalizer_t = ::std::option::Option; +pub type R_pstream_data_t = *mut ::std::os::raw::c_void; +pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; +pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; +pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; +pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; +pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; +pub type R_pstream_format_t = u32; +pub type R_outpstream_t = *mut R_outpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_outpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub version: ::std::os::raw::c_int, + pub OutChar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + pub OutBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub OutPersistHookFunc: + ::std::option::Option SEXP>, + pub OutPersistHookData: SEXP, } -extern "C" { - pub fn Rf_isString(s: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isObject(s: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "General Cons Cell Attributes"] - pub fn ATTRIB(x: SEXP) -> SEXP; +#[test] +fn bindgen_test_layout_R_outpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 48usize, + concat!("Size of: ", stringify!(R_outpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_outpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_outpstream_st), + "::", + stringify!(OutPersistHookData) + ) + ); } -extern "C" { - pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; +pub type R_inpstream_t = *mut R_inpstream_st; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_inpstream_st { + pub data: R_pstream_data_t, + pub type_: R_pstream_format_t, + pub InChar: + ::std::option::Option ::std::os::raw::c_int>, + pub InBytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + pub InPersistHookFunc: + ::std::option::Option SEXP>, + pub InPersistHookData: SEXP, + pub native_encoding: [::std::os::raw::c_char; 64usize], + pub nat2nat_obj: *mut ::std::os::raw::c_void, + pub nat2utf8_obj: *mut ::std::os::raw::c_void, } -extern "C" { - pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_inpstream_st() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 128usize, + concat!("Size of: ", stringify!(R_inpstream_st)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_inpstream_st)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InBytes) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookFunc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(InPersistHookData) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(native_encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2nat_obj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(R_inpstream_st), + "::", + stringify!(nat2utf8_obj) + ) + ); } -extern "C" { - pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; +#[doc = "try to allow some type checking"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_hashtab_type { + pub cell: SEXP, } -extern "C" { - pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; +#[test] +fn bindgen_test_layout_R_hashtab_type() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_hashtab_type)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_hashtab_type)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_hashtab_type), + "::", + stringify!(cell) + ) + ); } -extern "C" { - pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ATTRIB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); -} -extern "C" { - pub fn MARK_NOT_MUTABLE(x: SEXP); -} -extern "C" { - #[doc = "S4 object testing"] - pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Vector Access Functions"] - pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH(x: SEXP) -> R_xlen_t; +pub const ParseStatus_PARSE_NULL: ParseStatus = 0; +pub const ParseStatus_PARSE_OK: ParseStatus = 1; +pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; +pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; +pub const ParseStatus_PARSE_EOF: ParseStatus = 4; +#[doc = "PARSE_NULL will not be returned by R_ParseVector"] +pub type ParseStatus = u32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_altrep_class_t { + pub ptr: SEXP, } -extern "C" { - pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; +#[test] +fn bindgen_test_layout_R_altrep_class_t() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 8usize, + concat!("Size of: ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(R_altrep_class_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(R_altrep_class_t), + "::", + stringify!(ptr) + ) + ); } -extern "C" { - pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn REAL(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn RAW_RO(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn REAL_RO(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; -} -extern "C" { - #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] - pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); -} -extern "C" { - pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; -} -extern "C" { - pub fn STRING_PTR(x: SEXP) -> *mut SEXP; -} -extern "C" { - pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; -} -extern "C" { - pub fn INTEGER_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; -} -extern "C" { - pub fn LOGICAL_GET_REGION( - sx: SEXP, - i: R_xlen_t, - n: R_xlen_t, - buf: *mut ::std::os::raw::c_int, - ) -> R_xlen_t; -} -extern "C" { - pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; -} -extern "C" { - pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; -} -extern "C" { - #[doc = "metadata access"] - pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn TAG(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CDDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CADDDR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD4R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn CAD5R(e: SEXP) -> SEXP; -} -extern "C" { - pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_TAG(x: SEXP, y: SEXP); -} -extern "C" { - pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Closure Access Functions"] - pub fn FORMALS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn BODY(x: SEXP) -> SEXP; -} -extern "C" { - pub fn CLOENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FORMALS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_BODY(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_CLOENV(x: SEXP, v: SEXP); -} -extern "C" { - #[doc = "Symbol Access Functions"] - pub fn PRINTNAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn SYMVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn INTERNAL(x: SEXP) -> SEXP; -} -extern "C" { - pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Environment Access Functions"] - pub fn FRAME(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENCLOS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn HASHTAB(x: SEXP) -> SEXP; -} -extern "C" { - pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Promise Access Functions"] - pub fn PRCODE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRENV(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRVALUE(x: SEXP) -> SEXP; -} -extern "C" { - pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "External pointer access macros"] - pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; -} -#[doc = "We sometimes need to coerce a protected value and place the new\ncoerced value under protection. For these cases PROTECT_WITH_INDEX\nsaves an index of the protection location that can be used to\nreplace the protected value using REPROTECT."] -pub type PROTECT_INDEX = ::std::os::raw::c_int; -extern "C" { - #[doc = "The \"global\" environment"] - pub static mut R_GlobalEnv: SEXP; -} -extern "C" { - #[doc = "An empty environment at the root of the\nenvironment tree"] - pub static mut R_EmptyEnv: SEXP; -} -extern "C" { - #[doc = "The base environment; formerly R_NilValue"] - pub static mut R_BaseEnv: SEXP; -} -extern "C" { - #[doc = "The (fake) namespace for base"] - pub static mut R_BaseNamespace: SEXP; -} -extern "C" { - #[doc = "Registry for registered namespaces"] - pub static mut R_NamespaceRegistry: SEXP; -} -extern "C" { - #[doc = "Current srcref, for debuggers"] - pub static mut R_Srcref: SEXP; -} -extern "C" { - #[doc = "The nil object"] - pub static mut R_NilValue: SEXP; -} -extern "C" { - #[doc = "Unbound marker"] - pub static mut R_UnboundValue: SEXP; -} -extern "C" { - #[doc = "Missing argument marker"] - pub static mut R_MissingArg: SEXP; -} -extern "C" { - #[doc = "To be found in BC interp. state\n(marker)"] - pub static mut R_InBCInterpreter: SEXP; -} -extern "C" { - #[doc = "Use current expression (marker)"] - pub static mut R_CurrentExpression: SEXP; -} -extern "C" { - #[doc = "Marker for restarted function calls"] - pub static mut R_RestartToken: SEXP; -} -extern "C" { - #[doc = "\"as.character\""] - pub static mut R_AsCharacterSymbol: SEXP; -} -extern "C" { - #[doc = "\"@\""] - pub static mut R_AtsignSymbol: SEXP; -} -extern "C" { - #[doc = "<-- backcompatible version of:"] - pub static mut R_baseSymbol: SEXP; -} -extern "C" { - #[doc = "\"base\""] - pub static mut R_BaseSymbol: SEXP; -} -extern "C" { - #[doc = "\"{\""] - pub static mut R_BraceSymbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\\[\""] - pub static mut R_Bracket2Symbol: SEXP; -} -extern "C" { - #[doc = "\"\\[\""] - pub static mut R_BracketSymbol: SEXP; -} -extern "C" { - #[doc = "\"class\""] - pub static mut R_ClassSymbol: SEXP; -} -extern "C" { - #[doc = "\".Device\""] - pub static mut R_DeviceSymbol: SEXP; -} -extern "C" { - #[doc = "\"dimnames\""] - pub static mut R_DimNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\"dim\""] - pub static mut R_DimSymbol: SEXP; -} -extern "C" { - #[doc = "\"$\""] - pub static mut R_DollarSymbol: SEXP; -} -extern "C" { - #[doc = "\"...\""] - pub static mut R_DotsSymbol: SEXP; -} -extern "C" { - #[doc = "\"::\""] - pub static mut R_DoubleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"drop\""] - pub static mut R_DropSymbol: SEXP; -} -extern "C" { - #[doc = "\"eval\""] - pub static mut R_EvalSymbol: SEXP; -} -extern "C" { - #[doc = "\"function\""] - pub static mut R_FunctionSymbol: SEXP; -} -extern "C" { - #[doc = "\".Last.value\""] - pub static mut R_LastvalueSymbol: SEXP; -} -extern "C" { - #[doc = "\"levels\""] - pub static mut R_LevelsSymbol: SEXP; -} -extern "C" { - #[doc = "\"mode\""] - pub static mut R_ModeSymbol: SEXP; -} -extern "C" { - #[doc = "\"na.rm\""] - pub static mut R_NaRmSymbol: SEXP; -} -extern "C" { - #[doc = "\"name\""] - pub static mut R_NameSymbol: SEXP; -} -extern "C" { - #[doc = "\"names\""] - pub static mut R_NamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".__NAMESPACE__.\""] - pub static mut R_NamespaceEnvSymbol: SEXP; -} -extern "C" { - #[doc = "\"package\""] - pub static mut R_PackageSymbol: SEXP; -} -extern "C" { - #[doc = "\"previous\""] - pub static mut R_PreviousSymbol: SEXP; -} -extern "C" { - #[doc = "\"quote\""] - pub static mut R_QuoteSymbol: SEXP; -} -extern "C" { - #[doc = "\"row.names\""] - pub static mut R_RowNamesSymbol: SEXP; -} -extern "C" { - #[doc = "\".Random.seed\""] - pub static mut R_SeedsSymbol: SEXP; -} -extern "C" { - #[doc = "\"sort.list\""] - pub static mut R_SortListSymbol: SEXP; -} -extern "C" { - #[doc = "\"source\""] - pub static mut R_SourceSymbol: SEXP; -} -extern "C" { - #[doc = "\"spec\""] - pub static mut R_SpecSymbol: SEXP; -} -extern "C" { - #[doc = "\":::\""] - pub static mut R_TripleColonSymbol: SEXP; -} -extern "C" { - #[doc = "\"tsp\""] - pub static mut R_TspSymbol: SEXP; -} -extern "C" { - #[doc = "\".defined\""] - pub static mut R_dot_defined: SEXP; -} -extern "C" { - #[doc = "\".Method\""] - pub static mut R_dot_Method: SEXP; -} -extern "C" { - #[doc = "\".packageName\""] - pub static mut R_dot_packageName: SEXP; -} -extern "C" { - #[doc = "\".target\""] - pub static mut R_dot_target: SEXP; -} -extern "C" { - #[doc = "\".Generic\""] - pub static mut R_dot_Generic: SEXP; -} -extern "C" { - #[doc = "NA_STRING as a CHARSXP"] - pub static mut R_NaString: SEXP; -} -extern "C" { - #[doc = "\"\" as a CHARSXP"] - pub static mut R_BlankString: SEXP; -} -extern "C" { - #[doc = "\"\" as a STRSXP"] - pub static mut R_BlankScalarString: SEXP; -} -extern "C" { - #[doc = "srcref related functions"] - pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Type Coercions of all kinds"] - pub fn Rf_asChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_asReal(x: SEXP) -> f64; -} -extern "C" { - pub fn Rf_asComplex(x: SEXP) -> Rcomplex; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_allocator { - _unused: [u8; 0], -} -pub type R_allocator_t = R_allocator; -extern "C" { - #[doc = "Other Internally Used Functions, excluding those which are inline-able"] - pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_alloc3DArray( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_allocMatrix( - arg1: SEXPTYPE, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - ) -> SEXP; -} -extern "C" { - pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_allocS4Object() -> SEXP; -} -extern "C" { - pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; -} -extern "C" { - pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; -} -extern "C" { - pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); -} -extern "C" { - pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "the next really should not be here and is also in Defn.h"] - pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); -} -extern "C" { - pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetMatrixDimnames( - arg1: SEXP, - arg2: *mut SEXP, - arg3: *mut SEXP, - arg4: *mut *const ::std::os::raw::c_char, - arg5: *mut *const ::std::os::raw::c_char, - ); -} -extern "C" { - pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_installChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; -} -extern "C" { - pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; -} -extern "C" { - pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; -} -extern "C" { - pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -pub const nchar_type_Bytes: nchar_type = 0; -pub const nchar_type_Chars: nchar_type = 1; -pub const nchar_type_Width: nchar_type = 2; -#[doc = "../main/character.c :"] -pub type nchar_type = u32; -extern "C" { - pub fn R_nchar( - string: SEXP, - type_: nchar_type, - allowNA: Rboolean, - keepNA: Rboolean, - msg_name: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_PrintValue(arg1: SEXP); -} -extern "C" { - pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); -} -extern "C" { - pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; -} -extern "C" { - pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect_ptr(arg1: SEXP); -} -extern "C" { - pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_GetCurrentEnv() -> SEXP; -} -extern "C" { - pub fn Rf_isS4(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_S3Class(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -pub const cetype_t_CE_NATIVE: cetype_t = 0; -pub const cetype_t_CE_UTF8: cetype_t = 1; -pub const cetype_t_CE_LATIN1: cetype_t = 2; -pub const cetype_t_CE_BYTES: cetype_t = 3; -pub const cetype_t_CE_SYMBOL: cetype_t = 5; -pub const cetype_t_CE_ANY: cetype_t = 99; -#[doc = "cetype_t is an identifier reseved by POSIX, but it is\nwell established as public. Could remap by a #define though"] -pub type cetype_t = u32; -extern "C" { - pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; -} -extern "C" { - pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; -} -extern "C" { - pub fn Rf_mkCharLenCE( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: cetype_t, - ) -> SEXP; -} -extern "C" { - pub fn Rf_reEnc( - x: *const ::std::os::raw::c_char, - ce_in: cetype_t, - ce_out: cetype_t, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_reEnc3( - x: *const ::std::os::raw::c_char, - fromcode: *const ::std::os::raw::c_char, - tocode: *const ::std::os::raw::c_char, - subst: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Calling a function with arguments evaluated"] - pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; -} -extern "C" { - #[doc = "External pointer interface"] - pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClearExternalPtr(s: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); -} -extern "C" { - pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); -} -extern "C" { - #[doc = "Added in R 3.4.0"] - pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; -} -#[doc = "Finalization interface"] -pub type R_CFinalizer_t = ::std::option::Option; -extern "C" { - pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); -} -extern "C" { - pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); -} -extern "C" { - pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); -} -extern "C" { - pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); -} -extern "C" { - pub fn R_RunPendingFinalizers(); -} -extern "C" { - #[doc = "Weak reference interface"] - pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; -} -extern "C" { - pub fn R_WeakRefKey(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_WeakRefValue(w: SEXP) -> SEXP; -} -extern "C" { - pub fn R_RunWeakRefFinalizer(w: SEXP); -} -extern "C" { - pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn R_BytecodeExpr(e: SEXP) -> SEXP; -} -extern "C" { - #[doc = "Protected evaluation"] - pub fn R_ToplevelExec( - fun: ::std::option::Option, - data: *mut ::std::os::raw::c_void, - ) -> Rboolean; -} -extern "C" { - pub fn R_ExecWithCleanup( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option, - cleandata: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatch( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: SEXP, - arg4: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg5: *mut ::std::os::raw::c_void, - arg6: ::std::option::Option, - arg7: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_tryCatchError( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_withCallingErrorHandler( - arg1: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, - >, - arg4: *mut ::std::os::raw::c_void, - ) -> SEXP; -} -extern "C" { - pub fn R_MakeUnwindCont() -> SEXP; -} -extern "C" { - pub fn R_ContinueUnwind(cont: SEXP) -> !; -} -extern "C" { - pub fn R_UnwindProtect( - fun: ::std::option::Option SEXP>, - data: *mut ::std::os::raw::c_void, - cleanfun: ::std::option::Option< - unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), - >, - cleandata: *mut ::std::os::raw::c_void, - cont: SEXP, - ) -> SEXP; -} -extern "C" { - #[doc = "Environment and Binding Features"] - pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_PackageEnvName(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindPackageEnv(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; -} -extern "C" { - pub fn R_FindNamespace(info: SEXP) -> SEXP; -} -extern "C" { - pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); -} -extern "C" { - pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_LockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_unLockBinding(sym: SEXP, env: SEXP); -} -extern "C" { - pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); -} -extern "C" { - pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; -} -extern "C" { - pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; -} -extern "C" { - #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] - pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; -} -extern "C" { - pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); -} -extern "C" { - pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; -} -extern "C" { - pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -pub type R_pstream_data_t = *mut ::std::os::raw::c_void; -pub const R_pstream_format_t_R_pstream_any_format: R_pstream_format_t = 0; -pub const R_pstream_format_t_R_pstream_ascii_format: R_pstream_format_t = 1; -pub const R_pstream_format_t_R_pstream_binary_format: R_pstream_format_t = 2; -pub const R_pstream_format_t_R_pstream_xdr_format: R_pstream_format_t = 3; -pub const R_pstream_format_t_R_pstream_asciihex_format: R_pstream_format_t = 4; -pub type R_pstream_format_t = u32; -pub type R_outpstream_t = *mut R_outpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_outpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub version: ::std::os::raw::c_int, - pub OutChar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - pub OutBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub OutPersistHookFunc: - ::std::option::Option SEXP>, - pub OutPersistHookData: SEXP, -} -#[test] -fn bindgen_test_layout_R_outpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(R_outpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_outpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).OutPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_outpstream_st), - "::", - stringify!(OutPersistHookData) - ) - ); -} -pub type R_inpstream_t = *mut R_inpstream_st; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_inpstream_st { - pub data: R_pstream_data_t, - pub type_: R_pstream_format_t, - pub InChar: - ::std::option::Option ::std::os::raw::c_int>, - pub InBytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - pub InPersistHookFunc: - ::std::option::Option SEXP>, - pub InPersistHookData: SEXP, - pub native_encoding: [::std::os::raw::c_char; 64usize], - pub nat2nat_obj: *mut ::std::os::raw::c_void, - pub nat2utf8_obj: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_R_inpstream_st() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(R_inpstream_st)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_inpstream_st)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InChar) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InChar) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InBytes) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InBytes) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookFunc) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookFunc) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).InPersistHookData) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(InPersistHookData) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).native_encoding) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(native_encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2nat_obj) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2nat_obj) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nat2utf8_obj) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(R_inpstream_st), - "::", - stringify!(nat2utf8_obj) - ) - ); -} -extern "C" { - pub fn R_InitInPStream( - stream: R_inpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - inchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, - >, - inbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_inpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitOutPStream( - stream: R_outpstream_t, - data: R_pstream_data_t, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - outchar: ::std::option::Option< - unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), - >, - outbytes: ::std::option::Option< - unsafe extern "C" fn( - arg1: R_outpstream_t, - arg2: *mut ::std::os::raw::c_void, - arg3: ::std::os::raw::c_int, - ), - >, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileInPStream( - stream: R_inpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_InitFileOutPStream( - stream: R_outpstream_t, - fp: *mut FILE, - type_: R_pstream_format_t, - version: ::std::os::raw::c_int, - phook: ::std::option::Option SEXP>, - pdata: SEXP, - ); -} -extern "C" { - pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); -} -extern "C" { - pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; -} -extern "C" { - #[doc = "slot management (in attrib.c)"] - pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; -} -extern "C" { - pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "S3-S4 class (inheritance), attrib.c"] - pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; -} -extern "C" { - #[doc = "class definition, new objects (objects.c)"] - pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn R_getClassDef_R(what: SEXP) -> SEXP; -} -extern "C" { - pub fn R_has_methods_attached() -> Rboolean; -} -extern "C" { - pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; -} -extern "C" { - pub fn R_do_new_object(class_def: SEXP) -> SEXP; -} -extern "C" { - #[doc = "supporting a C-level version of is(., .) :"] - pub fn R_check_class_and_super( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - rho: SEXP, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_check_class_etc( - x: SEXP, - valid: *mut *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "preserve objects across GCs"] - pub fn R_PreserveObject(arg1: SEXP); -} -extern "C" { - pub fn R_ReleaseObject(arg1: SEXP); -} -extern "C" { - pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); -} -extern "C" { - pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "Shutdown actions"] - pub fn R_dot_Last(); -} -extern "C" { - pub fn R_RunExitFinalizers(); -} -extern "C" { - pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; -} -extern "C" { - pub fn R_body_no_src(x: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] - pub fn R_orderVector( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - arglist: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] - pub fn R_orderVector1( - indx: *mut ::std::os::raw::c_int, - n: ::std::os::raw::c_int, - x: SEXP, - nalast: Rboolean, - decreasing: Rboolean, - ); -} -extern "C" { - #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] - pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; -} -extern "C" { - pub fn Rf_isArray(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isTs(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVector(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; -} -extern "C" { - pub fn Rf_lang1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_lastElt(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_length(arg1: SEXP) -> R_len_t; -} -extern "C" { - pub fn Rf_list1(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) - -> SEXP; -} -extern "C" { - pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; -} -extern "C" { - pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_stringPositionTr( - arg1: SEXP, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarReal(arg1: f64) -> SEXP; -} -extern "C" { - pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn LENGTH_EX( - x: SEXP, - file: *const ::std::os::raw::c_char, - line: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; -} -extern "C" { - pub fn Rf_protect(arg1: SEXP) -> SEXP; -} -extern "C" { - pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); -} -extern "C" { - pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); -} -extern "C" { - pub fn CAR(e: SEXP) -> SEXP; -} -extern "C" { - pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; -} -extern "C" { - pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_OR_NULL(x: SEXP) -> *const f64; -} -extern "C" { - pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; -} -extern "C" { - pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; -} -extern "C" { - pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; -} -extern "C" { - pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; -} -extern "C" { - pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; -} -extern "C" { - pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; -} -extern "C" { - pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); -} -extern "C" { - pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); -} -extern "C" { - pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); -} -extern "C" { - #[doc = "ALTREP support"] - pub fn ALTREP_CLASS(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data1(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_altrep_data2(x: SEXP) -> SEXP; -} -extern "C" { - pub fn R_set_altrep_data1(x: SEXP, v: SEXP); -} -extern "C" { - pub fn R_set_altrep_data2(x: SEXP, v: SEXP); -} -extern "C" { - pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn REAL0(x: SEXP) -> *mut f64; -} -extern "C" { - pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; -} -extern "C" { - pub fn RAW0(x: SEXP) -> *mut Rbyte; -} -extern "C" { - pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; -} -#[doc = "try to allow some type checking"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_hashtab_type { - pub cell: SEXP, -} -#[test] -fn bindgen_test_layout_R_hashtab_type() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_hashtab_type)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_hashtab_type)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cell) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_hashtab_type), - "::", - stringify!(cell) - ) - ); -} -extern "C" { - #[doc = "public C interface"] - pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; -} -extern "C" { - pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; -} -extern "C" { - pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) - -> R_hashtab_type; -} -extern "C" { - pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; -} -extern "C" { - pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; -} -extern "C" { - pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; -} -extern "C" { - pub fn R_maphashC( - h: R_hashtab_type, - FUN: ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), - >, - data: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn R_clrhash(h: R_hashtab_type); -} -extern "C" { - #[doc = "stuff that probably shouldn't be in the API but is getting used"] - pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn UNSET_S4_OBJECT(x: SEXP); -} -extern "C" { - pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_psmatch( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: Rboolean, - ) -> Rboolean; -} -extern "C" { - pub fn SETLENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); -} -extern "C" { - pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - pub fn SET_FRAME(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_ENCLOS(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_HASHTAB(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRENV(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRVALUE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn SET_PRCODE(x: SEXP, v: SEXP); -} -extern "C" { - pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SET_GROWABLE_BIT(x: SEXP); -} -extern "C" { - pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); -} -extern "C" { - #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] - pub fn R_tryWrap(arg1: SEXP) -> SEXP; -} -extern "C" { - #[doc = "C stack limit"] - pub static mut R_CStackLimit: usize; -} -extern "C" { - pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_initialize_R( - ac: ::std::os::raw::c_int, - av: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setup_Rmainloop(); -} -extern "C" { - pub fn CleanEd(); -} -extern "C" { - pub fn R_CleanTempDir(); -} -extern "C" { - pub fn setup_term_ui(); -} -extern "C" { - pub static mut UserBreak: ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_initapp( - arg1: ::std::os::raw::c_int, - arg2: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn GA_appcleanup(); -} -extern "C" { - #[doc = "R's versions with !R_FINITE checks"] - pub fn R_pow(x: f64, y: f64) -> f64; -} -extern "C" { - pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - #[doc = "Random Number Generators"] - pub fn norm_rand() -> f64; -} -extern "C" { - pub fn unif_rand() -> f64; -} -extern "C" { - pub fn R_unif_index(arg1: f64) -> f64; -} -extern "C" { - pub fn exp_rand() -> f64; -} -extern "C" { - pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnorm5( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_pnorm_both( - arg1: f64, - arg2: *mut f64, - arg3: *mut f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_punif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qunif( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgamma( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pmx(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1pexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_log1mexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgamma1p(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlnorm( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qchisq( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rchisq(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnchisq( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qt( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rt(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_rmultinom( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: ::std::os::raw::c_int, - arg4: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qcauchy( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qexp( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rexp(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qgeom( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rgeom(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_phyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qhyper( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbinom_mu( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_ppois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qpois( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rpois(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qweibull( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_plogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qlogis( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_dnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_pnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnbeta( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnf( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qnt( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_ptukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qtukey( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: f64, - arg5: ::std::os::raw::c_int, - arg6: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_pwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qwilcox( - arg1: f64, - arg2: f64, - arg3: f64, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn wilcox_free(); -} -extern "C" { - pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_psignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_qsignrank( - arg1: f64, - arg2: f64, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ) -> f64; -} -extern "C" { - pub fn Rf_rsignrank(arg1: f64) -> f64; -} -extern "C" { - pub fn signrank_free(); -} -extern "C" { - pub fn Rf_gammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; -} -extern "C" { - pub fn Rf_dpsifn( - arg1: f64, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: *mut f64, - arg6: *mut ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_digamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_trigamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_tetragamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_pentagamma(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; -} -extern "C" { - pub fn Rf_imax2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_imin2( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_sign(arg1: f64) -> f64; -} -extern "C" { - pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; -} -extern "C" { - pub fn Rf_ftrunc(arg1: f64) -> f64; -} -extern "C" { - pub fn cospi(arg1: f64) -> f64; -} -extern "C" { - pub fn sinpi(arg1: f64) -> f64; -} -extern "C" { - pub fn tanpi(arg1: f64) -> f64; -} -extern "C" { - pub fn Rtanpi(arg1: f64) -> f64; -} -pub const ParseStatus_PARSE_NULL: ParseStatus = 0; -pub const ParseStatus_PARSE_OK: ParseStatus = 1; -pub const ParseStatus_PARSE_INCOMPLETE: ParseStatus = 2; -pub const ParseStatus_PARSE_ERROR: ParseStatus = 3; -pub const ParseStatus_PARSE_EOF: ParseStatus = 4; -#[doc = "PARSE_NULL will not be returned by R_ParseVector"] -pub type ParseStatus = u32; -extern "C" { - pub fn R_ParseVector( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: *mut ParseStatus, - arg4: SEXP, - ) -> SEXP; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_altrep_class_t { - pub ptr: SEXP, -} -#[test] -fn bindgen_test_layout_R_altrep_class_t() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(R_altrep_class_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(R_altrep_class_t), - "::", - stringify!(ptr) - ) - ); -} -extern "C" { - pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; -} -extern "C" { - pub fn R_make_altstring_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altinteger_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altreal_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlogical_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altraw_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altcomplex_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_make_altlist_class( - cname: *const ::std::os::raw::c_char, - pname: *const ::std::os::raw::c_char, - info: *mut DllInfo, - ) -> R_altrep_class_t; -} -extern "C" { - pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; -} -pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: SEXP, - arg3: SEXP, - arg4: ::std::os::raw::c_int, - arg5: ::std::os::raw::c_int, - ) -> SEXP, ->; -pub type R_altrep_Unserialize_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Serialized_state_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_DuplicateEX_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Duplicate_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Coerce_method_t = - ::std::option::Option SEXP>; -pub type R_altrep_Inspect_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - arg5: ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: ::std::os::raw::c_int, - arg3: ::std::os::raw::c_int, - arg4: ::std::os::raw::c_int, - ), - >, - ) -> Rboolean, ->; -pub type R_altrep_Length_method_t = - ::std::option::Option R_xlen_t>; -pub type R_altvec_Dataptr_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, ->; -pub type R_altvec_Dataptr_or_null_method_t = - ::std::option::Option *const ::std::os::raw::c_void>; -pub type R_altvec_Extract_subset_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altinteger_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altinteger_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altinteger_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altinteger_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Elt_method_t = - ::std::option::Option f64>; -pub type R_altreal_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, ->; -pub type R_altreal_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altreal_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Min_method_t = - ::std::option::Option SEXP>; -pub type R_altreal_Max_method_t = - ::std::option::Option SEXP>; -pub type R_altlogical_Elt_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, ->; -pub type R_altlogical_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut ::std::os::raw::c_int, - ) -> R_xlen_t, ->; -pub type R_altlogical_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlogical_Sum_method_t = - ::std::option::Option SEXP>; -pub type R_altraw_Elt_method_t = - ::std::option::Option Rbyte>; -pub type R_altraw_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, ->; -pub type R_altcomplex_Elt_method_t = - ::std::option::Option Rcomplex>; -pub type R_altcomplex_Get_region_method_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: SEXP, - arg2: R_xlen_t, - arg3: R_xlen_t, - arg4: *mut Rcomplex, - ) -> R_xlen_t, ->; -pub type R_altstring_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altstring_Set_elt_method_t = - ::std::option::Option; -pub type R_altstring_Is_sorted_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altstring_No_NA_method_t = - ::std::option::Option ::std::os::raw::c_int>; -pub type R_altlist_Elt_method_t = - ::std::option::Option SEXP>; -pub type R_altlist_Set_elt_method_t = - ::std::option::Option; -extern "C" { - pub fn R_set_altrep_UnserializeEX_method( - cls: R_altrep_class_t, - fun: R_altrep_UnserializeEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Unserialize_method( - cls: R_altrep_class_t, - fun: R_altrep_Unserialize_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Serialized_state_method( - cls: R_altrep_class_t, - fun: R_altrep_Serialized_state_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_DuplicateEX_method( - cls: R_altrep_class_t, - fun: R_altrep_DuplicateEX_method_t, - ); -} -extern "C" { - pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); -} -extern "C" { - pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); -} -extern "C" { - pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); -} -extern "C" { - pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); -} -extern "C" { - pub fn R_set_altvec_Dataptr_or_null_method( - cls: R_altrep_class_t, - fun: R_altvec_Dataptr_or_null_method_t, - ); -} -extern "C" { - pub fn R_set_altvec_Extract_subset_method( - cls: R_altrep_class_t, - fun: R_altvec_Extract_subset_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); -} -extern "C" { - pub fn R_set_altinteger_Get_region_method( - cls: R_altrep_class_t, - fun: R_altinteger_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altinteger_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); -} -extern "C" { - pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); -} -extern "C" { - pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); -} -extern "C" { - pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); -} -extern "C" { - pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); -} -extern "C" { - pub fn R_set_altreal_Get_region_method( - cls: R_altrep_class_t, - fun: R_altreal_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); -} -extern "C" { - pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); -} -extern "C" { - pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); -} -extern "C" { - pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); -} -extern "C" { - pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); -} -extern "C" { - pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); -} -extern "C" { - pub fn R_set_altlogical_Get_region_method( - cls: R_altrep_class_t, - fun: R_altlogical_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altlogical_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); -} -extern "C" { - pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); -} -extern "C" { - pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); -} -extern "C" { - pub fn R_set_altcomplex_Get_region_method( - cls: R_altrep_class_t, - fun: R_altcomplex_Get_region_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); -} -extern "C" { - pub fn R_set_altstring_Is_sorted_method( - cls: R_altrep_class_t, - fun: R_altstring_Is_sorted_method_t, - ); -} -extern "C" { - pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); -} -extern "C" { - pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); -} -extern "C" { - pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); -} -extern "C" { - pub fn R_GE_getVersion() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); -} -#[doc = "native device coordinates (rasters)"] -pub const GEUnit_GE_DEVICE: GEUnit = 0; -#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] -pub const GEUnit_GE_NDC: GEUnit = 1; -pub const GEUnit_GE_INCHES: GEUnit = 2; -pub const GEUnit_GE_CM: GEUnit = 3; -#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] -pub type GEUnit = u32; -#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] -pub const GEevent_GE_InitState: GEevent = 0; -#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] -pub const GEevent_GE_FinaliseState: GEevent = 1; -#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] -pub const GEevent_GE_SaveState: GEevent = 2; -#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] -pub const GEevent_GE_RestoreState: GEevent = 6; -#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] -pub const GEevent_GE_CopyState: GEevent = 3; -#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] -pub const GEevent_GE_SaveSnapshotState: GEevent = 4; -#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] -pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; -#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] -pub const GEevent_GE_CheckPlot: GEevent = 7; -#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] -pub const GEevent_GE_ScalePS: GEevent = 8; -pub type GEevent = u32; -pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; -pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; -pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; -#[doc = "Some line end/join constants"] -pub type R_GE_lineend = u32; -pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; -pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; -pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; -pub type R_GE_linejoin = u32; -#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct R_GE_gcontext { - #[doc = "pen colour (lines, text, borders, ...)"] - pub col: ::std::os::raw::c_int, - #[doc = "fill colour (for polygons, circles, rects, ...)"] - pub fill: ::std::os::raw::c_int, - #[doc = "Gamma correction"] - pub gamma: f64, - #[doc = "Line width (roughly number of pixels)"] - pub lwd: f64, - #[doc = "Line type (solid, dashed, dotted, ...)"] - pub lty: ::std::os::raw::c_int, - #[doc = "Line end"] - pub lend: R_GE_lineend, - #[doc = "line join"] - pub ljoin: R_GE_linejoin, - #[doc = "line mitre"] - pub lmitre: f64, - #[doc = "Character expansion (font size = fontsize*cex)"] - pub cex: f64, - #[doc = "Font size in points"] - pub ps: f64, - #[doc = "Line height (multiply by font size)"] - pub lineheight: f64, - #[doc = "Font face (plain, italic, bold, ...)"] - pub fontface: ::std::os::raw::c_int, - #[doc = "Font family"] - pub fontfamily: [::std::os::raw::c_char; 201usize], - #[doc = "Reference to a pattern fill"] - pub patternFill: SEXP, +pub type R_altrep_UnserializeEX_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: SEXP, + arg3: SEXP, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> SEXP, +>; +pub type R_altrep_Unserialize_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Serialized_state_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_DuplicateEX_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Duplicate_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Coerce_method_t = + ::std::option::Option SEXP>; +pub type R_altrep_Inspect_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ), + >, + ) -> Rboolean, +>; +pub type R_altrep_Length_method_t = + ::std::option::Option R_xlen_t>; +pub type R_altvec_Dataptr_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: Rboolean) -> *mut ::std::os::raw::c_void, +>; +pub type R_altvec_Dataptr_or_null_method_t = + ::std::option::Option *const ::std::os::raw::c_void>; +pub type R_altvec_Extract_subset_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altinteger_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altinteger_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altinteger_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altinteger_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Elt_method_t = + ::std::option::Option f64>; +pub type R_altreal_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut f64) -> R_xlen_t, +>; +pub type R_altreal_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altreal_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Min_method_t = + ::std::option::Option SEXP>; +pub type R_altreal_Max_method_t = + ::std::option::Option SEXP>; +pub type R_altlogical_Elt_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t) -> ::std::os::raw::c_int, +>; +pub type R_altlogical_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut ::std::os::raw::c_int, + ) -> R_xlen_t, +>; +pub type R_altlogical_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlogical_Sum_method_t = + ::std::option::Option SEXP>; +pub type R_altraw_Elt_method_t = + ::std::option::Option Rbyte>; +pub type R_altraw_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: R_xlen_t, arg3: R_xlen_t, arg4: *mut Rbyte) -> R_xlen_t, +>; +pub type R_altcomplex_Elt_method_t = + ::std::option::Option Rcomplex>; +pub type R_altcomplex_Get_region_method_t = ::std::option::Option< + unsafe extern "C" fn( + arg1: SEXP, + arg2: R_xlen_t, + arg3: R_xlen_t, + arg4: *mut Rcomplex, + ) -> R_xlen_t, +>; +pub type R_altstring_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altstring_Set_elt_method_t = + ::std::option::Option; +pub type R_altstring_Is_sorted_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altstring_No_NA_method_t = + ::std::option::Option ::std::os::raw::c_int>; +pub type R_altlist_Elt_method_t = + ::std::option::Option SEXP>; +pub type R_altlist_Set_elt_method_t = + ::std::option::Option; +#[doc = "native device coordinates (rasters)"] +pub const GEUnit_GE_DEVICE: GEUnit = 0; +#[doc = "normalised device coordinates x=(0,1), y=(0,1)"] +pub const GEUnit_GE_NDC: GEUnit = 1; +pub const GEUnit_GE_INCHES: GEUnit = 2; +pub const GEUnit_GE_CM: GEUnit = 3; +#[doc = "The graphics engine will only accept locations and dimensions\n in native device coordinates, but it provides the following functions\n for converting between a couple of simple alternative coordinate\n systems and device coordinates:\n DEVICE = native units of the device\n NDC = Normalised device coordinates\n INCHES = inches (!)\n CM = centimetres (!!)"] +pub type GEUnit = u32; +#[doc = "In response to this event, the registered graphics system\n should allocate and initialise the systemSpecific structure\n\n Should return R_NilValue on failure so that engine\n can tidy up memory allocation"] +pub const GEevent_GE_InitState: GEevent = 0; +#[doc = "This event gives the registered system a chance to undo\n anything done in the initialisation."] +pub const GEevent_GE_FinaliseState: GEevent = 1; +#[doc = "This is sent by the graphics engine prior to initialising\n the display list. It give the graphics system the chance\n to squirrel away information it will need for redrawing the\n the display list"] +pub const GEevent_GE_SaveState: GEevent = 2; +#[doc = "This is sent by the graphics engine prior to replaying the\n display list. It gives the graphics system the chance to\n restore any information it saved on the GE_SaveState event"] +pub const GEevent_GE_RestoreState: GEevent = 6; +#[doc = "Copy system state information to the current device.\n This is used when copying graphics from one device to another\n so all the graphics system needs to do is to copy across\n the bits required for the display list to draw faithfully\n on the new device."] +pub const GEevent_GE_CopyState: GEevent = 3; +#[doc = "Create a snapshot of the system state that is sufficient\n for the current \"image\" to be reproduced"] +pub const GEevent_GE_SaveSnapshotState: GEevent = 4; +#[doc = "Restore the system state that is saved by GE_SaveSnapshotState"] +pub const GEevent_GE_RestoreSnapshotState: GEevent = 5; +#[doc = "When replaying the display list, the graphics engine\n checks, after each replayed action, that the action\n produced valid output. This is the graphics system's\n chance to say that the output is crap (in which case the\n graphics engine will abort the display list replay)."] +pub const GEevent_GE_CheckPlot: GEevent = 7; +#[doc = "The device wants to scale the current pointsize\n (for scaling an image)\n This is not a nice general solution, but a quick fix for\n the Windows device."] +pub const GEevent_GE_ScalePS: GEevent = 8; +pub type GEevent = u32; +pub const R_GE_lineend_GE_ROUND_CAP: R_GE_lineend = 1; +pub const R_GE_lineend_GE_BUTT_CAP: R_GE_lineend = 2; +pub const R_GE_lineend_GE_SQUARE_CAP: R_GE_lineend = 3; +#[doc = "Some line end/join constants"] +pub type R_GE_lineend = u32; +pub const R_GE_linejoin_GE_ROUND_JOIN: R_GE_linejoin = 1; +pub const R_GE_linejoin_GE_MITRE_JOIN: R_GE_linejoin = 2; +pub const R_GE_linejoin_GE_BEVEL_JOIN: R_GE_linejoin = 3; +pub type R_GE_linejoin = u32; +#[doc = "A structure containing graphical parameters\n\n This is how graphical parameters are passed from graphics systems\n to the graphics engine AND from the graphics engine to graphics\n devices.\n\n Devices are not *required* to honour graphical parameters\n (e.g., alpha transparency is going to be tough for some)"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct R_GE_gcontext { + #[doc = "pen colour (lines, text, borders, ...)"] + pub col: ::std::os::raw::c_int, + #[doc = "fill colour (for polygons, circles, rects, ...)"] + pub fill: ::std::os::raw::c_int, + #[doc = "Gamma correction"] + pub gamma: f64, + #[doc = "Line width (roughly number of pixels)"] + pub lwd: f64, + #[doc = "Line type (solid, dashed, dotted, ...)"] + pub lty: ::std::os::raw::c_int, + #[doc = "Line end"] + pub lend: R_GE_lineend, + #[doc = "line join"] + pub ljoin: R_GE_linejoin, + #[doc = "line mitre"] + pub lmitre: f64, + #[doc = "Character expansion (font size = fontsize*cex)"] + pub cex: f64, + #[doc = "Font size in points"] + pub ps: f64, + #[doc = "Line height (multiply by font size)"] + pub lineheight: f64, + #[doc = "Font face (plain, italic, bold, ...)"] + pub fontface: ::std::os::raw::c_int, + #[doc = "Font family"] + pub fontfamily: [::std::os::raw::c_char; 201usize], + #[doc = "Reference to a pattern fill"] + pub patternFill: SEXP, } #[test] fn bindgen_test_layout_R_GE_gcontext() { @@ -4314,1264 +1290,2786 @@ fn bindgen_test_layout__DevDesc() { const UNINIT: ::std::mem::MaybeUninit<_DevDesc> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( - ::std::mem::size_of::<_DevDesc>(), - 656usize, - concat!("Size of: ", stringify!(_DevDesc)) + ::std::mem::size_of::<_DevDesc>(), + 656usize, + concat!("Size of: ", stringify!(_DevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_DevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_DevDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(left) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(right) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(bottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(top) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipLeft) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipRight) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipBottom) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(clipTop) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(xCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yCharOffset) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(yLineBias) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(ipr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(cra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(gamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canClip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, + 132usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canChangeGamma) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(canHAdj) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, + 152usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startcol) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, + 156usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfill) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, + 160usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startlty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, + 164usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startfont) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(startgamma) + ) ); assert_eq!( - ::std::mem::align_of::<_DevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_DevDesc)) + unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, + 176usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(deviceSpecific) + ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).left) as usize - ptr as usize }, - 0usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 184usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(left) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).right) as usize - ptr as usize }, - 8usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, + 188usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(right) + stringify!(canGenMouseDown) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bottom) as usize - ptr as usize }, - 16usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, + 192usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(bottom) + stringify!(canGenMouseMove) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).top) as usize - ptr as usize }, - 24usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, + 196usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(top) + stringify!(canGenMouseUp) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipLeft) as usize - ptr as usize }, - 32usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, + 200usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipLeft) + stringify!(canGenKeybd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipRight) as usize - ptr as usize }, - 40usize, + unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, + 204usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipRight) + stringify!(canGenIdle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipBottom) as usize - ptr as usize }, - 48usize, + unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, + 208usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipBottom) + stringify!(gettingEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clipTop) as usize - ptr as usize }, - 56usize, + unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, + 216usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clipTop) + stringify!(activate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).xCharOffset) as usize - ptr as usize }, - 64usize, + unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, + 224usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(xCharOffset) + stringify!(circle) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yCharOffset) as usize - ptr as usize }, - 72usize, + unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, + 232usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yCharOffset) + stringify!(clip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).yLineBias) as usize - ptr as usize }, - 80usize, + unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(yLineBias) + stringify!(close) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ipr) as usize - ptr as usize }, - 88usize, + unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, + 248usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(ipr) + stringify!(deactivate) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cra) as usize - ptr as usize }, - 104usize, + unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, + 256usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cra) + stringify!(locator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gamma) as usize - ptr as usize }, - 120usize, + unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, + 264usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gamma) + stringify!(line) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canClip) as usize - ptr as usize }, - 128usize, + unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, + 272usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canClip) + stringify!(metricInfo) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canChangeGamma) as usize - ptr as usize }, - 132usize, + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 280usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canChangeGamma) + stringify!(mode) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canHAdj) as usize - ptr as usize }, - 136usize, + unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, + 288usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canHAdj) + stringify!(newPage) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startps) as usize - ptr as usize }, - 144usize, + unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, + 296usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startps) + stringify!(polygon) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startcol) as usize - ptr as usize }, - 152usize, + unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, + 304usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startcol) + stringify!(polyline) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfill) as usize - ptr as usize }, - 156usize, + unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, + 312usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfill) + stringify!(rect) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startlty) as usize - ptr as usize }, - 160usize, + unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, + 320usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startlty) + stringify!(path) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startfont) as usize - ptr as usize }, - 164usize, + unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, + 328usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startfont) + stringify!(raster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).startgamma) as usize - ptr as usize }, - 168usize, + unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, + 336usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(startgamma) + stringify!(cap) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceSpecific) as usize - ptr as usize }, - 176usize, + unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, + 344usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deviceSpecific) + stringify!(size) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 184usize, + unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, + 352usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(displayListOn) + stringify!(strWidth) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseDown) as usize - ptr as usize }, - 188usize, + unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, + 360usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseDown) + stringify!(text) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseMove) as usize - ptr as usize }, - 192usize, + unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, + 368usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseMove) + stringify!(onExit) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenMouseUp) as usize - ptr as usize }, - 196usize, + unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, + 376usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenMouseUp) + stringify!(getEvent) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenKeybd) as usize - ptr as usize }, - 200usize, + unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, + 384usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenKeybd) + stringify!(newFrameConfirm) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).canGenIdle) as usize - ptr as usize }, - 204usize, + unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(hasTextUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(textUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(strWidthUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, + 416usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(wantSymbolUTF8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, + 420usize, + concat!( + "Offset of field: ", + stringify!(_DevDesc), + "::", + stringify!(useRotatedTextInContour) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, + 424usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(canGenIdle) + stringify!(eventEnv) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gettingEvent) as usize - ptr as usize }, - 208usize, + unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, + 432usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(gettingEvent) + stringify!(eventHelper) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).activate) as usize - ptr as usize }, - 216usize, + unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, + 440usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(activate) + stringify!(holdflush) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).circle) as usize - ptr as usize }, - 224usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, + 448usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(circle) + stringify!(haveTransparency) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).clip) as usize - ptr as usize }, - 232usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, + 452usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(clip) + stringify!(haveTransparentBg) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).close) as usize - ptr as usize }, - 240usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, + 456usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(close) + stringify!(haveRaster) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deactivate) as usize - ptr as usize }, - 248usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, + 460usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(deactivate) + stringify!(haveCapture) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).locator) as usize - ptr as usize }, - 256usize, + unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, + 464usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(locator) + stringify!(haveLocator) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize }, - 264usize, + unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, + 472usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(line) + stringify!(setPattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).metricInfo) as usize - ptr as usize }, - 272usize, + unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, + 480usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(metricInfo) + stringify!(releasePattern) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, - 280usize, + unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, + 488usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(mode) + stringify!(setClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newPage) as usize - ptr as usize }, - 288usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, + 496usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newPage) + stringify!(releaseClipPath) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polygon) as usize - ptr as usize }, - 296usize, + unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, + 504usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polygon) + stringify!(setMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).polyline) as usize - ptr as usize }, - 304usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, + 512usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(polyline) + stringify!(releaseMask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rect) as usize - ptr as usize }, - 312usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, + 520usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(rect) + stringify!(deviceVersion) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).path) as usize - ptr as usize }, - 320usize, + unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, + 524usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(path) + stringify!(deviceClip) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).raster) as usize - ptr as usize }, - 328usize, + unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, + 528usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(raster) + stringify!(defineGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize }, - 336usize, + unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, + 536usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(cap) + stringify!(useGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize }, - 344usize, + unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, + 544usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(size) + stringify!(releaseGroup) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidth) as usize - ptr as usize }, - 352usize, + unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, + 552usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(strWidth) + stringify!(stroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).text) as usize - ptr as usize }, - 360usize, + unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, + 560usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(text) + stringify!(fill) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).onExit) as usize - ptr as usize }, - 368usize, + unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, + 568usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(onExit) + stringify!(fillStroke) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).getEvent) as usize - ptr as usize }, - 376usize, + unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, + 576usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(getEvent) + stringify!(capabilities) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).newFrameConfirm) as usize - ptr as usize }, - 384usize, + unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, + 584usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(newFrameConfirm) + stringify!(glyph) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).hasTextUTF8) as usize - ptr as usize }, - 392usize, + unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, + 592usize, concat!( "Offset of field: ", stringify!(_DevDesc), "::", - stringify!(hasTextUTF8) + stringify!(reserved) ) ); +} +pub const R_KeyName_knUNKNOWN: R_KeyName = -1; +pub const R_KeyName_knLEFT: R_KeyName = 0; +pub const R_KeyName_knUP: R_KeyName = 1; +pub const R_KeyName_knRIGHT: R_KeyName = 2; +pub const R_KeyName_knDOWN: R_KeyName = 3; +pub const R_KeyName_knF1: R_KeyName = 4; +pub const R_KeyName_knF2: R_KeyName = 5; +pub const R_KeyName_knF3: R_KeyName = 6; +pub const R_KeyName_knF4: R_KeyName = 7; +pub const R_KeyName_knF5: R_KeyName = 8; +pub const R_KeyName_knF6: R_KeyName = 9; +pub const R_KeyName_knF7: R_KeyName = 10; +pub const R_KeyName_knF8: R_KeyName = 11; +pub const R_KeyName_knF9: R_KeyName = 12; +pub const R_KeyName_knF10: R_KeyName = 13; +pub const R_KeyName_knF11: R_KeyName = 14; +pub const R_KeyName_knF12: R_KeyName = 15; +pub const R_KeyName_knPGUP: R_KeyName = 16; +pub const R_KeyName_knPGDN: R_KeyName = 17; +pub const R_KeyName_knEND: R_KeyName = 18; +pub const R_KeyName_knHOME: R_KeyName = 19; +pub const R_KeyName_knINS: R_KeyName = 20; +pub const R_KeyName_knDEL: R_KeyName = 21; +#[doc = "These give the indices of some known keys"] +pub type R_KeyName = i32; +pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; +pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; +pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; +#[doc = "These are the three possible mouse events"] +pub type R_MouseEvent = u32; +pub type GEDevDesc = _GEDevDesc; +pub type GEcallback = ::std::option::Option< + unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GESystemDesc { + #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] + pub systemSpecific: *mut ::std::os::raw::c_void, + #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] + pub callback: GEcallback, +} +#[test] +fn bindgen_test_layout_GESystemDesc() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(GESystemDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).textUTF8) as usize - ptr as usize }, - 400usize, + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(GESystemDesc)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(textUTF8) + stringify!(systemSpecific) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strWidthUTF8) as usize - ptr as usize }, - 408usize, + unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(GESystemDesc), "::", - stringify!(strWidthUTF8) + stringify!(callback) ) ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _GEDevDesc { + #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] + pub dev: pDevDesc, + #[doc = "toggle for display list status"] + pub displayListOn: Rboolean, + #[doc = "display list"] + pub displayList: SEXP, + #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] + pub DLlastElt: SEXP, + #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] + pub savedSnapshot: SEXP, + #[doc = "Has the device received any output?"] + pub dirty: Rboolean, + #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] + pub recordGraphics: Rboolean, + #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] + pub gesd: [*mut GESystemDesc; 24usize], + #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] + pub ask: Rboolean, + #[doc = "Is a device appending a path ?"] + pub appending: Rboolean, +} +#[test] +fn bindgen_test_layout__GEDevDesc() { + const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_GEDevDesc>(), + 248usize, + concat!("Size of: ", stringify!(_GEDevDesc)) + ); + assert_eq!( + ::std::mem::align_of::<_GEDevDesc>(), + 8usize, + concat!("Alignment of ", stringify!(_GEDevDesc)) + ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).wantSymbolUTF8) as usize - ptr as usize }, - 416usize, + unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(wantSymbolUTF8) + stringify!(dev) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useRotatedTextInContour) as usize - ptr as usize }, - 420usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(useRotatedTextInContour) + stringify!(displayListOn) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventEnv) as usize - ptr as usize }, - 424usize, + unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, + 16usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventEnv) + stringify!(displayList) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).eventHelper) as usize - ptr as usize }, - 432usize, + unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, + 24usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(eventHelper) + stringify!(DLlastElt) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).holdflush) as usize - ptr as usize }, - 440usize, + unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, + 32usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(holdflush) + stringify!(savedSnapshot) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparency) as usize - ptr as usize }, - 448usize, + unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, + 40usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparency) + stringify!(dirty) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveTransparentBg) as usize - ptr as usize }, - 452usize, + unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, + 44usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveTransparentBg) + stringify!(recordGraphics) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveRaster) as usize - ptr as usize }, - 456usize, + unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, + 48usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveRaster) + stringify!(gesd) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveCapture) as usize - ptr as usize }, - 460usize, + unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, + 240usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveCapture) + stringify!(ask) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).haveLocator) as usize - ptr as usize }, - 464usize, + unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, + 244usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(_GEDevDesc), "::", - stringify!(haveLocator) + stringify!(appending) ) ); +} +pub type pGEDevDesc = *mut GEDevDesc; +#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] +pub type rcolor = ::std::os::raw::c_uint; +#[doc = "../../appl/integrate.c"] +pub type integr_fn = ::std::option::Option< + unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), +>; +#[doc = "main/optim.c"] +pub type optimfn = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut ::std::os::raw::c_void, + ) -> f64, +>; +pub type optimgr = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the target and gradient functions"] +pub type fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: *mut f64, + arg4: *mut ::std::os::raw::c_void, + ), +>; +#[doc = "type of pointer to the hessian functions"] +pub type d2fcn_p = ::std::option::Option< + unsafe extern "C" fn( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: *mut f64, + arg4: *mut f64, + arg5: *mut ::std::os::raw::c_void, + ), +>; +pub const RNGtype_WICHMANN_HILL: RNGtype = 0; +pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; +pub const RNGtype_SUPER_DUPER: RNGtype = 2; +pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; +pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; +pub const RNGtype_USER_UNIF: RNGtype = 5; +pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; +pub const RNGtype_LECUYER_CMRG: RNGtype = 7; +pub type RNGtype = u32; +pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; +pub const N01type_AHRENS_DIETER: N01type = 1; +pub const N01type_BOX_MULLER: N01type = 2; +pub const N01type_USER_NORM: N01type = 3; +pub const N01type_INVERSION: N01type = 4; +pub const N01type_KINDERMAN_RAMAGE: N01type = 5; +#[doc = "Different kinds of \"N(0,1)\" generators :"] +pub type N01type = u32; +pub const Sampletype_ROUNDING: Sampletype = 0; +pub const Sampletype_REJECTION: Sampletype = 1; +#[doc = "Different ways to generate discrete uniform samples"] +pub type Sampletype = u32; +pub type Int32 = ::std::os::raw::c_uint; +#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Rcomplex { + pub r: f64, + pub i: f64, +} +#[test] +fn bindgen_test_layout_Rcomplex() { + const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setPattern) as usize - ptr as usize }, - 472usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setPattern) - ) + ::std::mem::size_of::(), + 16usize, + concat!("Size of: ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releasePattern) as usize - ptr as usize }, - 480usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releasePattern) - ) + ::std::mem::align_of::(), + 8usize, + concat!("Alignment of ", stringify!(Rcomplex)) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setClipPath) as usize - ptr as usize }, - 488usize, + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(setClipPath) + stringify!(r) ) ); assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseClipPath) as usize - ptr as usize }, - 496usize, + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, concat!( "Offset of field: ", - stringify!(_DevDesc), + stringify!(Rcomplex), "::", - stringify!(releaseClipPath) + stringify!(i) ) ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).setMask) as usize - ptr as usize }, - 504usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(setMask) - ) +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; +extern "C" { + #[doc = "IEEE NaN"] + pub static mut R_NaN: f64; + #[doc = "IEEE Inf"] + pub static mut R_PosInf: f64; + #[doc = "IEEE -Inf"] + pub static mut R_NegInf: f64; + #[doc = "NA_REAL: IEEE"] + pub static mut R_NaReal: f64; + #[doc = "NA_INTEGER:= INT_MIN currently"] + pub static mut R_NaInt: ::std::os::raw::c_int; + #[doc = "NA_STRING is a SEXP, so defined in Rinternals.h"] + pub fn R_IsNA(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_IsNaN(arg1: f64) -> ::std::os::raw::c_int; + pub fn R_finite(arg1: f64) -> ::std::os::raw::c_int; + pub fn Rf_error(arg1: *const ::std::os::raw::c_char, ...) -> !; + pub fn UNIMPLEMENTED(arg1: *const ::std::os::raw::c_char) -> !; + pub fn WrongArgCount(arg1: *const ::std::os::raw::c_char) -> !; + pub fn Rf_warning(arg1: *const ::std::os::raw::c_char, ...); + pub fn R_ShowMessage(s: *const ::std::os::raw::c_char); + pub fn vmaxget() -> *mut ::std::os::raw::c_void; + pub fn vmaxset(arg1: *const ::std::os::raw::c_void); + pub fn R_gc(); + pub fn R_gc_running() -> ::std::os::raw::c_int; + pub fn R_alloc(arg1: usize, arg2: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; + pub fn R_allocLD(nelem: usize) -> *mut u128; + pub fn S_alloc( + arg1: ::std::os::raw::c_long, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn S_realloc( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_long, + arg4: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn R_malloc_gc(arg1: usize) -> *mut ::std::os::raw::c_void; + pub fn R_calloc_gc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; + pub fn R_realloc_gc( + arg1: *mut ::std::os::raw::c_void, + arg2: usize, + ) -> *mut ::std::os::raw::c_void; + #[doc = "../../main/sort.c :"] + pub fn R_isort(arg1: *mut ::std::os::raw::c_int, arg2: ::std::os::raw::c_int); + pub fn R_rsort(arg1: *mut f64, arg2: ::std::os::raw::c_int); + pub fn R_csort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int); + pub fn rsort_with_index( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseMask) as usize - ptr as usize }, - 512usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseMask) - ) + pub fn Rf_revsort( + arg1: *mut f64, + arg2: *mut ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceVersion) as usize - ptr as usize }, - 520usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceVersion) - ) + pub fn Rf_iPsort( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).deviceClip) as usize - ptr as usize }, - 524usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(deviceClip) - ) + pub fn Rf_rPsort(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + pub fn Rf_cPsort(arg1: *mut Rcomplex, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int); + #[doc = "../../main/qsort.c : */\n/* dummy renamed to II to avoid problems with g++ on Solaris"] + pub fn R_qsort(v: *mut f64, i: usize, j: usize); + pub fn R_qsort_I( + v: *mut f64, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).defineGroup) as usize - ptr as usize }, - 528usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(defineGroup) - ) + pub fn R_qsort_int(iv: *mut ::std::os::raw::c_int, i: usize, j: usize); + pub fn R_qsort_int_I( + iv: *mut ::std::os::raw::c_int, + II: *mut ::std::os::raw::c_int, + i: ::std::os::raw::c_int, + j: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).useGroup) as usize - ptr as usize }, - 536usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(useGroup) - ) + #[doc = "../../main/util.c and others :"] + pub fn R_ExpandFileName(arg1: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_setIVector( + arg1: *mut ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).releaseGroup) as usize - ptr as usize }, - 544usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(releaseGroup) - ) + pub fn Rf_setRVector(arg1: *mut f64, arg2: ::std::os::raw::c_int, arg3: f64); + pub fn Rf_StringFalse(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_StringTrue(arg1: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isBlankString(arg1: *const ::std::os::raw::c_char) -> Rboolean; + #[doc = "These two are guaranteed to use '.' as the decimal point,\nand to accept \"NA\"."] + pub fn R_atof(str_: *const ::std::os::raw::c_char) -> f64; + pub fn R_strtod(c: *const ::std::os::raw::c_char, end: *mut *mut ::std::os::raw::c_char) + -> f64; + pub fn R_tmpnam( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_tmpnam2( + prefix: *const ::std::os::raw::c_char, + tempdir: *const ::std::os::raw::c_char, + fileext: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; + pub fn R_free_tmpnam(name: *mut ::std::os::raw::c_char); + pub fn R_CheckUserInterrupt(); + pub fn R_CheckStack(); + pub fn R_CheckStack2(arg1: usize); + #[doc = "../../appl/interv.c: also in Applic.h"] + pub fn findInterval( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn findInterval2( + xt: *mut f64, + n: ::std::os::raw::c_int, + x: f64, + rightmost_closed: Rboolean, + all_inside: Rboolean, + left_open: Rboolean, + ilo: ::std::os::raw::c_int, + mflag: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn find_interv_vec( + xt: *mut f64, + n: *mut ::std::os::raw::c_int, + x: *mut f64, + nx: *mut ::std::os::raw::c_int, + rightmost_closed: *mut ::std::os::raw::c_int, + all_inside: *mut ::std::os::raw::c_int, + indx: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).stroke) as usize - ptr as usize }, - 552usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(stroke) - ) + #[doc = "../../appl/maxcol.c: also in Applic.h"] + pub fn R_max_col( + matrix: *mut f64, + nr: *mut ::std::os::raw::c_int, + nc: *mut ::std::os::raw::c_int, + maxes: *mut ::std::os::raw::c_int, + ties_meth: *mut ::std::os::raw::c_int, + ); + pub fn Rprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn REprintf(arg1: *const ::std::os::raw::c_char, ...); + pub fn Rvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn REvprintf(arg1: *const ::std::os::raw::c_char, arg2: va_list); + pub fn R_registerRoutines( + info: *mut DllInfo, + croutines: *const R_CMethodDef, + callRoutines: *const R_CallMethodDef, + fortranRoutines: *const R_FortranMethodDef, + externalRoutines: *const R_ExternalMethodDef, + ) -> ::std::os::raw::c_int; + pub fn R_useDynamicSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_forceSymbols(info: *mut DllInfo, value: Rboolean) -> Rboolean; + pub fn R_getDllInfo(name: *const ::std::os::raw::c_char) -> *mut DllInfo; + #[doc = "To be used by applications embedding R to register their symbols\nthat are not related to any dynamic module"] + pub fn R_getEmbeddingDllInfo() -> *mut DllInfo; + pub fn R_FindSymbol( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + symbol: *mut R_RegisteredNativeSymbol, + ) -> DL_FUNC; + #[doc = "Interface for exporting and importing functions from one package\nfor use from C code in a package. The registration part probably\nought to be integrated with the other registrations. The naming of\nthese routines may be less than ideal."] + pub fn R_RegisterCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + fptr: DL_FUNC, + ); + pub fn R_GetCCallable( + package: *const ::std::os::raw::c_char, + name: *const ::std::os::raw::c_char, + ) -> DL_FUNC; + pub fn R_CHAR(x: SEXP) -> *const ::std::os::raw::c_char; + #[doc = "Various tests with macro versions in the internal headers"] + pub fn Rf_isNull(s: SEXP) -> Rboolean; + pub fn Rf_isSymbol(s: SEXP) -> Rboolean; + pub fn Rf_isLogical(s: SEXP) -> Rboolean; + pub fn Rf_isReal(s: SEXP) -> Rboolean; + pub fn Rf_isComplex(s: SEXP) -> Rboolean; + pub fn Rf_isExpression(s: SEXP) -> Rboolean; + pub fn Rf_isEnvironment(s: SEXP) -> Rboolean; + pub fn Rf_isString(s: SEXP) -> Rboolean; + pub fn Rf_isObject(s: SEXP) -> Rboolean; + #[doc = "General Cons Cell Attributes"] + pub fn ATTRIB(x: SEXP) -> SEXP; + pub fn OBJECT(x: SEXP) -> ::std::os::raw::c_int; + pub fn MARK(x: SEXP) -> ::std::os::raw::c_int; + pub fn TYPEOF(x: SEXP) -> ::std::os::raw::c_int; + pub fn NAMED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REFCNT(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_ATTRIB(x: SEXP, v: SEXP); + pub fn DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn SHALLOW_DUPLICATE_ATTRIB(to: SEXP, from: SEXP); + pub fn MARK_NOT_MUTABLE(x: SEXP); + #[doc = "S4 object testing"] + pub fn IS_S4_OBJECT(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Vector Access Functions"] + pub fn LENGTH(x: SEXP) -> ::std::os::raw::c_int; + pub fn XLENGTH(x: SEXP) -> R_xlen_t; + pub fn TRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn IS_LONG_VEC(x: SEXP) -> ::std::os::raw::c_int; + pub fn LEVELS(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn RAW(x: SEXP) -> *mut Rbyte; + pub fn REAL(x: SEXP) -> *mut f64; + pub fn COMPLEX(x: SEXP) -> *mut Rcomplex; + pub fn LOGICAL_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_RO(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn RAW_RO(x: SEXP) -> *const Rbyte; + pub fn REAL_RO(x: SEXP) -> *const f64; + pub fn COMPLEX_RO(x: SEXP) -> *const Rcomplex; + #[doc = "SEXP (STRING_ELT)(SEXP x, R_xlen_t i);"] + pub fn VECTOR_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_STRING_ELT(x: SEXP, i: R_xlen_t, v: SEXP); + pub fn SET_VECTOR_ELT(x: SEXP, i: R_xlen_t, v: SEXP) -> SEXP; + pub fn STRING_PTR(x: SEXP) -> *mut SEXP; + pub fn STRING_PTR_RO(x: SEXP) -> *const SEXP; + pub fn INTEGER_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn REAL_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut f64) -> R_xlen_t; + pub fn LOGICAL_GET_REGION( + sx: SEXP, + i: R_xlen_t, + n: R_xlen_t, + buf: *mut ::std::os::raw::c_int, + ) -> R_xlen_t; + pub fn COMPLEX_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rcomplex) -> R_xlen_t; + pub fn RAW_GET_REGION(sx: SEXP, i: R_xlen_t, n: R_xlen_t, buf: *mut Rbyte) -> R_xlen_t; + #[doc = "metadata access"] + pub fn INTEGER_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn INTEGER_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn REAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn LOGICAL_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_IS_SORTED(x: SEXP) -> ::std::os::raw::c_int; + pub fn STRING_NO_NA(x: SEXP) -> ::std::os::raw::c_int; + pub fn TAG(e: SEXP) -> SEXP; + pub fn CDR(e: SEXP) -> SEXP; + pub fn CAAR(e: SEXP) -> SEXP; + pub fn CDAR(e: SEXP) -> SEXP; + pub fn CADR(e: SEXP) -> SEXP; + pub fn CDDR(e: SEXP) -> SEXP; + pub fn CDDDR(e: SEXP) -> SEXP; + pub fn CADDR(e: SEXP) -> SEXP; + pub fn CADDDR(e: SEXP) -> SEXP; + pub fn CAD4R(e: SEXP) -> SEXP; + pub fn CAD5R(e: SEXP) -> SEXP; + pub fn MISSING(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_TAG(x: SEXP, y: SEXP); + pub fn SETCAR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCADDDR(x: SEXP, y: SEXP) -> SEXP; + pub fn SETCAD4R(e: SEXP, y: SEXP) -> SEXP; + #[doc = "Closure Access Functions"] + pub fn FORMALS(x: SEXP) -> SEXP; + pub fn BODY(x: SEXP) -> SEXP; + pub fn CLOENV(x: SEXP) -> SEXP; + pub fn RDEBUG(x: SEXP) -> ::std::os::raw::c_int; + pub fn RSTEP(x: SEXP) -> ::std::os::raw::c_int; + pub fn RTRACE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_RDEBUG(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RSTEP(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_RTRACE(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FORMALS(x: SEXP, v: SEXP); + pub fn SET_BODY(x: SEXP, v: SEXP); + pub fn SET_CLOENV(x: SEXP, v: SEXP); + #[doc = "Symbol Access Functions"] + pub fn PRINTNAME(x: SEXP) -> SEXP; + pub fn SYMVALUE(x: SEXP) -> SEXP; + pub fn INTERNAL(x: SEXP) -> SEXP; + pub fn DDVAL(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Environment Access Functions"] + pub fn FRAME(x: SEXP) -> SEXP; + pub fn ENCLOS(x: SEXP) -> SEXP; + pub fn HASHTAB(x: SEXP) -> SEXP; + pub fn ENVFLAGS(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "Promise Access Functions"] + pub fn PRCODE(x: SEXP) -> SEXP; + pub fn PRENV(x: SEXP) -> SEXP; + pub fn PRVALUE(x: SEXP) -> SEXP; + pub fn PRSEEN(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "External pointer access macros"] + pub fn EXTPTR_PROT(arg1: SEXP) -> SEXP; + pub fn EXTPTR_TAG(arg1: SEXP) -> SEXP; + pub fn EXTPTR_PTR(arg1: SEXP) -> *mut ::std::os::raw::c_void; + #[doc = "The \"global\" environment"] + pub static mut R_GlobalEnv: SEXP; + #[doc = "An empty environment at the root of the\nenvironment tree"] + pub static mut R_EmptyEnv: SEXP; + #[doc = "The base environment; formerly R_NilValue"] + pub static mut R_BaseEnv: SEXP; + #[doc = "The (fake) namespace for base"] + pub static mut R_BaseNamespace: SEXP; + #[doc = "Registry for registered namespaces"] + pub static mut R_NamespaceRegistry: SEXP; + #[doc = "Current srcref, for debuggers"] + pub static mut R_Srcref: SEXP; + #[doc = "The nil object"] + pub static mut R_NilValue: SEXP; + #[doc = "Unbound marker"] + pub static mut R_UnboundValue: SEXP; + #[doc = "Missing argument marker"] + pub static mut R_MissingArg: SEXP; + #[doc = "To be found in BC interp. state\n(marker)"] + pub static mut R_InBCInterpreter: SEXP; + #[doc = "Use current expression (marker)"] + pub static mut R_CurrentExpression: SEXP; + #[doc = "Marker for restarted function calls"] + pub static mut R_RestartToken: SEXP; + #[doc = "\"as.character\""] + pub static mut R_AsCharacterSymbol: SEXP; + #[doc = "\"@\""] + pub static mut R_AtsignSymbol: SEXP; + #[doc = "<-- backcompatible version of:"] + pub static mut R_baseSymbol: SEXP; + #[doc = "\"base\""] + pub static mut R_BaseSymbol: SEXP; + #[doc = "\"{\""] + pub static mut R_BraceSymbol: SEXP; + #[doc = "\"\\[\\[\""] + pub static mut R_Bracket2Symbol: SEXP; + #[doc = "\"\\[\""] + pub static mut R_BracketSymbol: SEXP; + #[doc = "\"class\""] + pub static mut R_ClassSymbol: SEXP; + #[doc = "\".Device\""] + pub static mut R_DeviceSymbol: SEXP; + #[doc = "\"dimnames\""] + pub static mut R_DimNamesSymbol: SEXP; + #[doc = "\"dim\""] + pub static mut R_DimSymbol: SEXP; + #[doc = "\"$\""] + pub static mut R_DollarSymbol: SEXP; + #[doc = "\"...\""] + pub static mut R_DotsSymbol: SEXP; + #[doc = "\"::\""] + pub static mut R_DoubleColonSymbol: SEXP; + #[doc = "\"drop\""] + pub static mut R_DropSymbol: SEXP; + #[doc = "\"eval\""] + pub static mut R_EvalSymbol: SEXP; + #[doc = "\"function\""] + pub static mut R_FunctionSymbol: SEXP; + #[doc = "\".Last.value\""] + pub static mut R_LastvalueSymbol: SEXP; + #[doc = "\"levels\""] + pub static mut R_LevelsSymbol: SEXP; + #[doc = "\"mode\""] + pub static mut R_ModeSymbol: SEXP; + #[doc = "\"na.rm\""] + pub static mut R_NaRmSymbol: SEXP; + #[doc = "\"name\""] + pub static mut R_NameSymbol: SEXP; + #[doc = "\"names\""] + pub static mut R_NamesSymbol: SEXP; + #[doc = "\".__NAMESPACE__.\""] + pub static mut R_NamespaceEnvSymbol: SEXP; + #[doc = "\"package\""] + pub static mut R_PackageSymbol: SEXP; + #[doc = "\"previous\""] + pub static mut R_PreviousSymbol: SEXP; + #[doc = "\"quote\""] + pub static mut R_QuoteSymbol: SEXP; + #[doc = "\"row.names\""] + pub static mut R_RowNamesSymbol: SEXP; + #[doc = "\".Random.seed\""] + pub static mut R_SeedsSymbol: SEXP; + #[doc = "\"sort.list\""] + pub static mut R_SortListSymbol: SEXP; + #[doc = "\"source\""] + pub static mut R_SourceSymbol: SEXP; + #[doc = "\"spec\""] + pub static mut R_SpecSymbol: SEXP; + #[doc = "\":::\""] + pub static mut R_TripleColonSymbol: SEXP; + #[doc = "\"tsp\""] + pub static mut R_TspSymbol: SEXP; + #[doc = "\".defined\""] + pub static mut R_dot_defined: SEXP; + #[doc = "\".Method\""] + pub static mut R_dot_Method: SEXP; + #[doc = "\".packageName\""] + pub static mut R_dot_packageName: SEXP; + #[doc = "\".target\""] + pub static mut R_dot_target: SEXP; + #[doc = "\".Generic\""] + pub static mut R_dot_Generic: SEXP; + #[doc = "NA_STRING as a CHARSXP"] + pub static mut R_NaString: SEXP; + #[doc = "\"\" as a CHARSXP"] + pub static mut R_BlankString: SEXP; + #[doc = "\"\" as a STRSXP"] + pub static mut R_BlankScalarString: SEXP; + #[doc = "srcref related functions"] + pub fn R_GetCurrentSrcref(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_GetSrcFilename(arg1: SEXP) -> SEXP; + #[doc = "Type Coercions of all kinds"] + pub fn Rf_asChar(arg1: SEXP) -> SEXP; + pub fn Rf_coerceVector(arg1: SEXP, arg2: SEXPTYPE) -> SEXP; + pub fn Rf_PairToVectorList(x: SEXP) -> SEXP; + pub fn Rf_VectorToPairList(x: SEXP) -> SEXP; + pub fn Rf_asCharacterFactor(x: SEXP) -> SEXP; + pub fn Rf_asLogical(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asInteger(x: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_asReal(x: SEXP) -> f64; + pub fn Rf_asComplex(x: SEXP) -> Rcomplex; + #[doc = "Other Internally Used Functions, excluding those which are inline-able"] + pub fn Rf_acopy_string(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; + pub fn Rf_alloc3DArray( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocArray(arg1: SEXPTYPE, arg2: SEXP) -> SEXP; + pub fn Rf_allocMatrix( + arg1: SEXPTYPE, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + ) -> SEXP; + pub fn Rf_allocList(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_allocS4Object() -> SEXP; + pub fn Rf_allocSExp(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_allocVector3(arg1: SEXPTYPE, arg2: R_xlen_t, arg3: *mut R_allocator_t) -> SEXP; + pub fn Rf_any_duplicated(x: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_any_duplicated3(x: SEXP, incomp: SEXP, from_last: Rboolean) -> R_xlen_t; + pub fn Rf_applyClosure(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_classgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_cons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_copyMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyListMatrix(arg1: SEXP, arg2: SEXP, arg3: Rboolean); + pub fn Rf_copyMostAttrib(arg1: SEXP, arg2: SEXP); + pub fn Rf_copyVector(arg1: SEXP, arg2: SEXP); + pub fn Rf_defineVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_dimgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_dimnamesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_duplicate(arg1: SEXP) -> SEXP; + pub fn Rf_shallow_duplicate(arg1: SEXP) -> SEXP; + pub fn R_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn R_shallow_duplicate_attr(arg1: SEXP) -> SEXP; + pub fn Rf_lazy_duplicate(arg1: SEXP) -> SEXP; + #[doc = "the next really should not be here and is also in Defn.h"] + pub fn Rf_duplicated(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn Rf_eval(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findFun(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVar(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_findVarInFrame3(arg1: SEXP, arg2: SEXP, arg3: Rboolean) -> SEXP; + pub fn R_existsVarInFrame(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn R_removeVarFromFrame(arg1: SEXP, arg2: SEXP); + pub fn Rf_getAttrib(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetArrayDimnames(arg1: SEXP) -> SEXP; + pub fn Rf_GetColNames(arg1: SEXP) -> SEXP; + pub fn Rf_GetMatrixDimnames( + arg1: SEXP, + arg2: *mut SEXP, + arg3: *mut SEXP, + arg4: *mut *const ::std::os::raw::c_char, + arg5: *mut *const ::std::os::raw::c_char, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fill) as usize - ptr as usize }, - 560usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fill) - ) + pub fn Rf_GetOption(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_GetOption1(arg1: SEXP) -> SEXP; + pub fn Rf_GetOptionDigits() -> ::std::os::raw::c_int; + pub fn Rf_GetOptionWidth() -> ::std::os::raw::c_int; + pub fn Rf_GetRowNames(arg1: SEXP) -> SEXP; + pub fn Rf_gsetVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_install(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_installChar(arg1: SEXP) -> SEXP; + pub fn Rf_installNoTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_installTrChar(arg1: SEXP) -> SEXP; + pub fn Rf_isOrdered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnordered(arg1: SEXP) -> Rboolean; + pub fn Rf_isUnsorted(arg1: SEXP, arg2: Rboolean) -> Rboolean; + pub fn Rf_lengthgets(arg1: SEXP, arg2: R_len_t) -> SEXP; + pub fn Rf_xlengthgets(arg1: SEXP, arg2: R_xlen_t) -> SEXP; + pub fn R_lsInternal(arg1: SEXP, arg2: Rboolean) -> SEXP; + pub fn R_lsInternal3(arg1: SEXP, arg2: Rboolean, arg3: Rboolean) -> SEXP; + pub fn Rf_match(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_namesgets(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkChar(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkCharLen(arg1: *const ::std::os::raw::c_char, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_NonNullStringMatch(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_ncols(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nrows(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_nthcdr(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn R_nchar( + string: SEXP, + type_: nchar_type, + allowNA: Rboolean, + keepNA: Rboolean, + msg_name: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn R_ParseEvalString(arg1: *const ::std::os::raw::c_char, arg2: SEXP) -> SEXP; + pub fn R_ParseString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_PrintValue(arg1: SEXP); + pub fn Rf_setAttrib(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_setVar(arg1: SEXP, arg2: SEXP, arg3: SEXP); + pub fn Rf_str2type(arg1: *const ::std::os::raw::c_char) -> SEXPTYPE; + pub fn Rf_StringBlank(arg1: SEXP) -> Rboolean; + pub fn Rf_substitute(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_topenv(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_translateChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_translateCharUTF8(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2char(arg1: SEXPTYPE) -> *const ::std::os::raw::c_char; + pub fn R_typeToChar(arg1: SEXP) -> *const ::std::os::raw::c_char; + pub fn Rf_type2rstr(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_type2str_nowarn(arg1: SEXPTYPE) -> SEXP; + pub fn Rf_unprotect_ptr(arg1: SEXP); + pub fn R_tryEval(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_tryEvalSilent(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_int) -> SEXP; + pub fn R_GetCurrentEnv() -> SEXP; + pub fn Rf_isS4(arg1: SEXP) -> Rboolean; + pub fn Rf_asS4(arg1: SEXP, arg2: Rboolean, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_S3Class(arg1: SEXP) -> SEXP; + pub fn Rf_isBasicClass(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn Rf_getCharCE(arg1: SEXP) -> cetype_t; + pub fn Rf_mkCharCE(arg1: *const ::std::os::raw::c_char, arg2: cetype_t) -> SEXP; + pub fn Rf_mkCharLenCE( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: cetype_t, + ) -> SEXP; + pub fn Rf_reEnc( + x: *const ::std::os::raw::c_char, + ce_in: cetype_t, + ce_out: cetype_t, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + pub fn Rf_reEnc3( + x: *const ::std::os::raw::c_char, + fromcode: *const ::std::os::raw::c_char, + tocode: *const ::std::os::raw::c_char, + subst: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; + #[doc = "Calling a function with arguments evaluated"] + pub fn R_forceAndCall(e: SEXP, n: ::std::os::raw::c_int, rho: SEXP) -> SEXP; + #[doc = "External pointer interface"] + pub fn R_MakeExternalPtr(p: *mut ::std::os::raw::c_void, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddr(s: SEXP) -> *mut ::std::os::raw::c_void; + pub fn R_ExternalPtrTag(s: SEXP) -> SEXP; + pub fn R_ExternalPtrProtected(s: SEXP) -> SEXP; + pub fn R_ClearExternalPtr(s: SEXP); + pub fn R_SetExternalPtrAddr(s: SEXP, p: *mut ::std::os::raw::c_void); + pub fn R_SetExternalPtrTag(s: SEXP, tag: SEXP); + pub fn R_SetExternalPtrProtected(s: SEXP, p: SEXP); + #[doc = "Added in R 3.4.0"] + pub fn R_MakeExternalPtrFn(p: DL_FUNC, tag: SEXP, prot: SEXP) -> SEXP; + pub fn R_ExternalPtrAddrFn(s: SEXP) -> DL_FUNC; + pub fn R_RegisterFinalizer(s: SEXP, fun: SEXP); + pub fn R_RegisterCFinalizer(s: SEXP, fun: R_CFinalizer_t); + pub fn R_RegisterFinalizerEx(s: SEXP, fun: SEXP, onexit: Rboolean); + pub fn R_RegisterCFinalizerEx(s: SEXP, fun: R_CFinalizer_t, onexit: Rboolean); + pub fn R_RunPendingFinalizers(); + #[doc = "Weak reference interface"] + pub fn R_MakeWeakRef(key: SEXP, val: SEXP, fin: SEXP, onexit: Rboolean) -> SEXP; + pub fn R_MakeWeakRefC(key: SEXP, val: SEXP, fin: R_CFinalizer_t, onexit: Rboolean) -> SEXP; + pub fn R_WeakRefKey(w: SEXP) -> SEXP; + pub fn R_WeakRefValue(w: SEXP) -> SEXP; + pub fn R_RunWeakRefFinalizer(w: SEXP); + pub fn R_PromiseExpr(arg1: SEXP) -> SEXP; + pub fn R_ClosureExpr(arg1: SEXP) -> SEXP; + pub fn R_BytecodeExpr(e: SEXP) -> SEXP; + #[doc = "Protected evaluation"] + pub fn R_ToplevelExec( + fun: ::std::option::Option, + data: *mut ::std::os::raw::c_void, + ) -> Rboolean; + pub fn R_ExecWithCleanup( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option, + cleandata: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatch( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: SEXP, + arg4: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg5: *mut ::std::os::raw::c_void, + arg6: ::std::option::Option, + arg7: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_tryCatchError( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_withCallingErrorHandler( + arg1: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: *mut ::std::os::raw::c_void) -> SEXP, + >, + arg4: *mut ::std::os::raw::c_void, + ) -> SEXP; + pub fn R_MakeUnwindCont() -> SEXP; + pub fn R_ContinueUnwind(cont: SEXP) -> !; + pub fn R_UnwindProtect( + fun: ::std::option::Option SEXP>, + data: *mut ::std::os::raw::c_void, + cleanfun: ::std::option::Option< + unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, jump: Rboolean), + >, + cleandata: *mut ::std::os::raw::c_void, + cont: SEXP, + ) -> SEXP; + #[doc = "Environment and Binding Features"] + pub fn R_NewEnv(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: ::std::os::raw::c_int) -> SEXP; + pub fn R_IsPackageEnv(rho: SEXP) -> Rboolean; + pub fn R_PackageEnvName(rho: SEXP) -> SEXP; + pub fn R_FindPackageEnv(info: SEXP) -> SEXP; + pub fn R_IsNamespaceEnv(rho: SEXP) -> Rboolean; + pub fn R_NamespaceEnvSpec(rho: SEXP) -> SEXP; + pub fn R_FindNamespace(info: SEXP) -> SEXP; + pub fn R_LockEnvironment(env: SEXP, bindings: Rboolean); + pub fn R_EnvironmentIsLocked(env: SEXP) -> Rboolean; + pub fn R_LockBinding(sym: SEXP, env: SEXP); + pub fn R_unLockBinding(sym: SEXP, env: SEXP); + pub fn R_MakeActiveBinding(sym: SEXP, fun: SEXP, env: SEXP); + pub fn R_BindingIsLocked(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_BindingIsActive(sym: SEXP, env: SEXP) -> Rboolean; + pub fn R_ActiveBindingFunction(sym: SEXP, env: SEXP) -> SEXP; + pub fn R_HasFancyBindings(rho: SEXP) -> Rboolean; + #[doc = "../main/errors.c : */\n/* needed for R_load/savehistory handling in front ends"] + pub fn Rf_errorcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...) -> !; + pub fn Rf_warningcall(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn Rf_warningcall_immediate(arg1: SEXP, arg2: *const ::std::os::raw::c_char, ...); + pub fn R_XDREncodeDouble(d: f64, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeDouble(buf: *mut ::std::os::raw::c_void) -> f64; + pub fn R_XDREncodeInteger(i: ::std::os::raw::c_int, buf: *mut ::std::os::raw::c_void); + pub fn R_XDRDecodeInteger(buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; + pub fn R_InitInPStream( + stream: R_inpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + inchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_inpstream_t) -> ::std::os::raw::c_int, + >, + inbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_inpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fillStroke) as usize - ptr as usize }, - 568usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(fillStroke) - ) + pub fn R_InitOutPStream( + stream: R_outpstream_t, + data: R_pstream_data_t, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + outchar: ::std::option::Option< + unsafe extern "C" fn(arg1: R_outpstream_t, arg2: ::std::os::raw::c_int), + >, + outbytes: ::std::option::Option< + unsafe extern "C" fn( + arg1: R_outpstream_t, + arg2: *mut ::std::os::raw::c_void, + arg3: ::std::os::raw::c_int, + ), + >, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).capabilities) as usize - ptr as usize }, - 576usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(capabilities) - ) + pub fn R_InitFileInPStream( + stream: R_inpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).glyph) as usize - ptr as usize }, - 584usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(glyph) - ) + pub fn R_InitFileOutPStream( + stream: R_outpstream_t, + fp: *mut FILE, + type_: R_pstream_format_t, + version: ::std::os::raw::c_int, + phook: ::std::option::Option SEXP>, + pdata: SEXP, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize }, - 592usize, - concat!( - "Offset of field: ", - stringify!(_DevDesc), - "::", - stringify!(reserved) - ) + pub fn R_Serialize(s: SEXP, ops: R_outpstream_t); + pub fn R_Unserialize(ips: R_inpstream_t) -> SEXP; + pub fn R_SerializeInfo(ips: R_inpstream_t) -> SEXP; + #[doc = "slot management (in attrib.c)"] + pub fn R_do_slot(obj: SEXP, name: SEXP) -> SEXP; + pub fn R_do_slot_assign(obj: SEXP, name: SEXP, value: SEXP) -> SEXP; + pub fn R_has_slot(obj: SEXP, name: SEXP) -> ::std::os::raw::c_int; + #[doc = "S3-S4 class (inheritance), attrib.c"] + pub fn R_S4_extends(klass: SEXP, useTable: SEXP) -> SEXP; + #[doc = "class definition, new objects (objects.c)"] + pub fn R_do_MAKE_CLASS(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef(what: *const ::std::os::raw::c_char) -> SEXP; + pub fn R_getClassDef_R(what: SEXP) -> SEXP; + pub fn R_has_methods_attached() -> Rboolean; + pub fn R_isVirtualClass(class_def: SEXP, env: SEXP) -> Rboolean; + pub fn R_extends(class1: SEXP, class2: SEXP, env: SEXP) -> Rboolean; + pub fn R_do_new_object(class_def: SEXP) -> SEXP; + #[doc = "supporting a C-level version of is(., .) :"] + pub fn R_check_class_and_super( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + rho: SEXP, + ) -> ::std::os::raw::c_int; + pub fn R_check_class_etc( + x: SEXP, + valid: *mut *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + #[doc = "preserve objects across GCs"] + pub fn R_PreserveObject(arg1: SEXP); + pub fn R_ReleaseObject(arg1: SEXP); + pub fn R_NewPreciousMSet(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn R_PreserveInMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseFromMSet(x: SEXP, mset: SEXP); + pub fn R_ReleaseMSet(mset: SEXP, keepSize: ::std::os::raw::c_int); + #[doc = "Shutdown actions"] + pub fn R_dot_Last(); + pub fn R_RunExitFinalizers(); + pub fn R_system(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn R_compute_identical(arg1: SEXP, arg2: SEXP, arg3: ::std::os::raw::c_int) -> Rboolean; + pub fn R_body_no_src(x: SEXP) -> SEXP; + #[doc = "C version of R's indx <- order(..., na.last, decreasing) :\ne.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)"] + pub fn R_orderVector( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + arglist: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); -} -extern "C" { - pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NumDevices() -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = "Check for an available device slot"] - pub fn R_CheckDeviceAvailable(); -} -extern "C" { - pub fn R_CheckDeviceAvailableBool() -> Rboolean; -} -extern "C" { - pub fn Rf_curDevice() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); -} -extern "C" { - pub fn Rf_NoDevices() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_NewFrameConfirm(arg1: pDevDesc); -} -pub const R_KeyName_knUNKNOWN: R_KeyName = -1; -pub const R_KeyName_knLEFT: R_KeyName = 0; -pub const R_KeyName_knUP: R_KeyName = 1; -pub const R_KeyName_knRIGHT: R_KeyName = 2; -pub const R_KeyName_knDOWN: R_KeyName = 3; -pub const R_KeyName_knF1: R_KeyName = 4; -pub const R_KeyName_knF2: R_KeyName = 5; -pub const R_KeyName_knF3: R_KeyName = 6; -pub const R_KeyName_knF4: R_KeyName = 7; -pub const R_KeyName_knF5: R_KeyName = 8; -pub const R_KeyName_knF6: R_KeyName = 9; -pub const R_KeyName_knF7: R_KeyName = 10; -pub const R_KeyName_knF8: R_KeyName = 11; -pub const R_KeyName_knF9: R_KeyName = 12; -pub const R_KeyName_knF10: R_KeyName = 13; -pub const R_KeyName_knF11: R_KeyName = 14; -pub const R_KeyName_knF12: R_KeyName = 15; -pub const R_KeyName_knPGUP: R_KeyName = 16; -pub const R_KeyName_knPGDN: R_KeyName = 17; -pub const R_KeyName_knEND: R_KeyName = 18; -pub const R_KeyName_knHOME: R_KeyName = 19; -pub const R_KeyName_knINS: R_KeyName = 20; -pub const R_KeyName_knDEL: R_KeyName = 21; -#[doc = "These give the indices of some known keys"] -pub type R_KeyName = i32; -pub const R_MouseEvent_meMouseDown: R_MouseEvent = 0; -pub const R_MouseEvent_meMouseUp: R_MouseEvent = 1; -pub const R_MouseEvent_meMouseMove: R_MouseEvent = 2; -#[doc = "These are the three possible mouse events"] -pub type R_MouseEvent = u32; -extern "C" { - pub fn Rf_doMouseEvent( - dd: pDevDesc, - event: R_MouseEvent, - buttons: ::std::os::raw::c_int, - x: f64, - y: f64, + #[doc = "C version of R's indx <- order(x, na.last, decreasing) :"] + pub fn R_orderVector1( + indx: *mut ::std::os::raw::c_int, + n: ::std::os::raw::c_int, + x: SEXP, + nalast: Rboolean, + decreasing: Rboolean, ); -} -extern "C" { - pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn Rf_doIdle(dd: pDevDesc); -} -extern "C" { - pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; -} -extern "C" { - pub static mut R_interrupts_suspended: Rboolean; -} -extern "C" { - pub static mut R_interrupts_pending: ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_onintr(); -} -extern "C" { - pub static mut mbcslocale: Rboolean; -} -extern "C" { - pub fn Rf_AdobeSymbol2utf8( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, - nwork: usize, - usePUA: Rboolean, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn Rf_utf8toAdobeSymbol( - out: *mut ::std::os::raw::c_char, - in_: *const ::std::os::raw::c_char, + #[doc = "These are the public inlinable functions that are provided in\nRinlinedfuns.h It is *essential* that these do not appear in any\nother header file, with or without the Rf_ prefix."] + pub fn Rf_allocVector(arg1: SEXPTYPE, arg2: R_xlen_t) -> SEXP; + pub fn Rf_conformable(arg1: SEXP, arg2: SEXP) -> Rboolean; + pub fn Rf_elt(arg1: SEXP, arg2: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_inherits(arg1: SEXP, arg2: *const ::std::os::raw::c_char) -> Rboolean; + pub fn Rf_isArray(arg1: SEXP) -> Rboolean; + pub fn Rf_isFactor(arg1: SEXP) -> Rboolean; + pub fn Rf_isFrame(arg1: SEXP) -> Rboolean; + pub fn Rf_isFunction(arg1: SEXP) -> Rboolean; + pub fn Rf_isInteger(arg1: SEXP) -> Rboolean; + pub fn Rf_isLanguage(arg1: SEXP) -> Rboolean; + pub fn Rf_isList(arg1: SEXP) -> Rboolean; + pub fn Rf_isMatrix(arg1: SEXP) -> Rboolean; + pub fn Rf_isNewList(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumber(arg1: SEXP) -> Rboolean; + pub fn Rf_isNumeric(arg1: SEXP) -> Rboolean; + pub fn Rf_isPairList(arg1: SEXP) -> Rboolean; + pub fn Rf_isPrimitive(arg1: SEXP) -> Rboolean; + pub fn Rf_isTs(arg1: SEXP) -> Rboolean; + pub fn Rf_isUserBinop(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidString(arg1: SEXP) -> Rboolean; + pub fn Rf_isValidStringF(arg1: SEXP) -> Rboolean; + pub fn Rf_isVector(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorAtomic(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorList(arg1: SEXP) -> Rboolean; + pub fn Rf_isVectorizable(arg1: SEXP) -> Rboolean; + pub fn Rf_lang1(arg1: SEXP) -> SEXP; + pub fn Rf_lang2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_lang3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_lang4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_lang5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_lang6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_lastElt(arg1: SEXP) -> SEXP; + pub fn Rf_lcons(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_length(arg1: SEXP) -> R_len_t; + pub fn Rf_list1(arg1: SEXP) -> SEXP; + pub fn Rf_list2(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_list3(arg1: SEXP, arg2: SEXP, arg3: SEXP) -> SEXP; + pub fn Rf_list4(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP) -> SEXP; + pub fn Rf_list5(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP) -> SEXP; + pub fn Rf_list6(arg1: SEXP, arg2: SEXP, arg3: SEXP, arg4: SEXP, arg5: SEXP, arg6: SEXP) + -> SEXP; + pub fn Rf_listAppend(arg1: SEXP, arg2: SEXP) -> SEXP; + pub fn Rf_mkNamed(arg1: SEXPTYPE, arg2: *mut *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_mkString(arg1: *const ::std::os::raw::c_char) -> SEXP; + pub fn Rf_nlevels(arg1: SEXP) -> ::std::os::raw::c_int; + pub fn Rf_stringPositionTr( + arg1: SEXP, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_ScalarComplex(arg1: Rcomplex) -> SEXP; + pub fn Rf_ScalarInteger(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarLogical(arg1: ::std::os::raw::c_int) -> SEXP; + pub fn Rf_ScalarRaw(arg1: Rbyte) -> SEXP; + pub fn Rf_ScalarReal(arg1: f64) -> SEXP; + pub fn Rf_ScalarString(arg1: SEXP) -> SEXP; + pub fn Rf_xlength(arg1: SEXP) -> R_xlen_t; + pub fn XTRUELENGTH(x: SEXP) -> R_xlen_t; + pub fn LENGTH_EX( + x: SEXP, + file: *const ::std::os::raw::c_char, + line: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn XLENGTH_EX(x: SEXP) -> R_xlen_t; + pub fn Rf_protect(arg1: SEXP) -> SEXP; + pub fn Rf_unprotect(arg1: ::std::os::raw::c_int); + pub fn R_ProtectWithIndex(arg1: SEXP, arg2: *mut PROTECT_INDEX); + pub fn R_Reprotect(arg1: SEXP, arg2: PROTECT_INDEX); + pub fn CAR(e: SEXP) -> SEXP; + pub fn DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn DATAPTR_RO(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn DATAPTR_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_void; + pub fn LOGICAL_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn INTEGER_OR_NULL(x: SEXP) -> *const ::std::os::raw::c_int; + pub fn REAL_OR_NULL(x: SEXP) -> *const f64; + pub fn COMPLEX_OR_NULL(x: SEXP) -> *const Rcomplex; + pub fn RAW_OR_NULL(x: SEXP) -> *const Rbyte; + pub fn INTEGER_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn REAL_ELT(x: SEXP, i: R_xlen_t) -> f64; + pub fn LOGICAL_ELT(x: SEXP, i: R_xlen_t) -> ::std::os::raw::c_int; + pub fn COMPLEX_ELT(x: SEXP, i: R_xlen_t) -> Rcomplex; + pub fn RAW_ELT(x: SEXP, i: R_xlen_t) -> Rbyte; + pub fn STRING_ELT(x: SEXP, i: R_xlen_t) -> SEXP; + pub fn SET_LOGICAL_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_INTEGER_ELT(x: SEXP, i: R_xlen_t, v: ::std::os::raw::c_int); + pub fn SET_REAL_ELT(x: SEXP, i: R_xlen_t, v: f64); + pub fn SET_COMPLEX_ELT(x: SEXP, i: R_xlen_t, v: Rcomplex); + pub fn SET_RAW_ELT(x: SEXP, i: R_xlen_t, v: Rbyte); + #[doc = "ALTREP support"] + pub fn ALTREP_CLASS(x: SEXP) -> SEXP; + pub fn R_altrep_data1(x: SEXP) -> SEXP; + pub fn R_altrep_data2(x: SEXP) -> SEXP; + pub fn R_set_altrep_data1(x: SEXP, v: SEXP); + pub fn R_set_altrep_data2(x: SEXP, v: SEXP); + pub fn LOGICAL0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn INTEGER0(x: SEXP) -> *mut ::std::os::raw::c_int; + pub fn REAL0(x: SEXP) -> *mut f64; + pub fn COMPLEX0(x: SEXP) -> *mut Rcomplex; + pub fn RAW0(x: SEXP) -> *mut Rbyte; + pub fn ALTREP(x: SEXP) -> ::std::os::raw::c_int; + #[doc = "public C interface"] + pub fn R_asHashtable(h: SEXP) -> R_hashtab_type; + pub fn R_HashtabSEXP(h: R_hashtab_type) -> SEXP; + pub fn R_isHashtable(h: SEXP) -> ::std::os::raw::c_int; + pub fn R_mkhashtab(type_: ::std::os::raw::c_int, arg1: ::std::os::raw::c_int) + -> R_hashtab_type; + pub fn R_gethash(h: R_hashtab_type, key: SEXP, nomatch: SEXP) -> SEXP; + pub fn R_sethash(h: R_hashtab_type, key: SEXP, value: SEXP) -> SEXP; + pub fn R_remhash(h: R_hashtab_type, key: SEXP) -> ::std::os::raw::c_int; + pub fn R_numhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_typhash(h: R_hashtab_type) -> ::std::os::raw::c_int; + pub fn R_maphash(h: R_hashtab_type, FUN: SEXP) -> SEXP; + pub fn R_maphashC( + h: R_hashtab_type, + FUN: ::std::option::Option< + unsafe extern "C" fn(arg1: SEXP, arg2: SEXP, arg3: *mut ::std::os::raw::c_void), + >, + data: *mut ::std::os::raw::c_void, + ); + pub fn R_clrhash(h: R_hashtab_type); + #[doc = "stuff that probably shouldn't be in the API but is getting used"] + pub fn SET_TYPEOF(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_OBJECT(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_S4_OBJECT(x: SEXP); + pub fn UNSET_S4_OBJECT(x: SEXP); + pub fn R_curErrorBuf() -> *const ::std::os::raw::c_char; + pub fn IS_SCALAR(x: SEXP, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_psmatch( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: Rboolean, + ) -> Rboolean; + pub fn SETLENGTH(x: SEXP, v: R_xlen_t); + pub fn SET_TRUELENGTH(x: SEXP, v: R_xlen_t); + pub fn SETLEVELS(x: SEXP, v: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SET_ENVFLAGS(x: SEXP, v: ::std::os::raw::c_int); + pub fn SET_FRAME(x: SEXP, v: SEXP); + pub fn SET_ENCLOS(x: SEXP, v: SEXP); + pub fn SET_HASHTAB(x: SEXP, v: SEXP); + pub fn SET_PRENV(x: SEXP, v: SEXP); + pub fn SET_PRVALUE(x: SEXP, v: SEXP); + pub fn SET_PRCODE(x: SEXP, v: SEXP); + pub fn STDVEC_DATAPTR(x: SEXP) -> *mut ::std::os::raw::c_void; + pub fn IS_GROWABLE(x: SEXP) -> ::std::os::raw::c_int; + pub fn SET_GROWABLE_BIT(x: SEXP); + pub fn SET_NAMED(x: SEXP, v: ::std::os::raw::c_int); + #[doc = "used by BIOC::matter; mightbe reasonable to include in API"] + pub fn R_tryWrap(arg1: SEXP) -> SEXP; + #[doc = "C stack limit"] + pub static mut R_CStackLimit: usize; + pub fn Rf_endEmbeddedR(fatal: ::std::os::raw::c_int); + pub fn Rf_initialize_R( + ac: ::std::os::raw::c_int, + av: *mut *mut ::std::os::raw::c_char, ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( - in_: *const ::std::os::raw::c_char, - usePUA: Rboolean, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - #[doc = "Translates Unicode point to UTF-8"] - pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; -} -pub type GEDevDesc = _GEDevDesc; -pub type GEcallback = ::std::option::Option< - unsafe extern "C" fn(arg1: GEevent, arg2: *mut GEDevDesc, arg3: SEXP) -> SEXP, ->; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct GESystemDesc { - #[doc = "An array of information about each graphics system that\n has registered with the graphics engine.\n This is used to store graphics state for each graphics\n system on each device."] - pub systemSpecific: *mut ::std::os::raw::c_void, - #[doc = "An array of function pointers, one per graphics system that\n has registered with the graphics engine.\n\n system_Callback is called when the graphics engine wants\n to give a graphics system the chance to play with its\n device-specific information (stored in systemSpecific)\n There are two parameters: an \"event\" to tell the graphics\n system why the graphics engine has called this function,\n and the systemSpecific pointer. The graphics engine\n has to pass the systemSpecific pointer because only\n the graphics engine will know what array index to use."] - pub callback: GEcallback, -} -#[test] -fn bindgen_test_layout_GESystemDesc() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(GESystemDesc)) + pub fn setup_Rmainloop(); + pub fn CleanEd(); + pub fn R_CleanTempDir(); + pub fn setup_term_ui(); + pub static mut UserBreak: ::std::os::raw::c_int; + pub fn GA_initapp( + arg1: ::std::os::raw::c_int, + arg2: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn GA_appcleanup(); + #[doc = "R's versions with !R_FINITE checks"] + pub fn R_pow(x: f64, y: f64) -> f64; + pub fn R_pow_di(arg1: f64, arg2: ::std::os::raw::c_int) -> f64; + #[doc = "Random Number Generators"] + pub fn norm_rand() -> f64; + pub fn unif_rand() -> f64; + pub fn R_unif_index(arg1: f64) -> f64; + pub fn exp_rand() -> f64; + pub fn Rf_dnorm4(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnorm5( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_pnorm_both( + arg1: f64, + arg2: *mut f64, + arg3: *mut f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ); + pub fn Rf_dunif(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_punif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qunif( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_runif(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dgamma(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgamma( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_log1pmx(arg1: f64) -> f64; + pub fn Rf_log1pexp(arg1: f64) -> f64; + pub fn Rf_log1mexp(arg1: f64) -> f64; + pub fn Rf_lgamma1p(arg1: f64) -> f64; + pub fn Rf_logspace_add(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sub(arg1: f64, arg2: f64) -> f64; + pub fn Rf_logspace_sum(arg1: *const f64, arg2: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbeta(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlnorm(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlnorm( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlnorm(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dchisq(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qchisq( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rchisq(arg1: f64) -> f64; + pub fn Rf_dnchisq(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnchisq( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnchisq(arg1: f64, arg2: f64) -> f64; + pub fn Rf_df(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rf(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dt(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qt( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rt(arg1: f64) -> f64; + pub fn Rf_dbinom_raw(x: f64, n: f64, p: f64, q: f64, give_log: ::std::os::raw::c_int) -> f64; + pub fn Rf_dbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_rmultinom( + arg1: ::std::os::raw::c_int, + arg2: *mut f64, + arg3: ::std::os::raw::c_int, + arg4: *mut ::std::os::raw::c_int, ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(GESystemDesc)) + pub fn Rf_dcauchy(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qcauchy( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rcauchy(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dexp(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qexp( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rexp(arg1: f64) -> f64; + pub fn Rf_dgeom(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_pgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qgeom( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rgeom(arg1: f64) -> f64; + pub fn Rf_dhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_phyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qhyper( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rhyper(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnbinom(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbinom_mu(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbinom_mu( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbinom_mu(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dpois_raw(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_dpois(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_ppois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qpois( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rpois(arg1: f64) -> f64; + pub fn Rf_dweibull(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qweibull( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rweibull(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dlogis(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_plogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qlogis( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rlogis(arg1: f64, arg2: f64) -> f64; + pub fn Rf_dnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_pnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnbeta( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rnbeta(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_dnf(arg1: f64, arg2: f64, arg3: f64, arg4: f64, arg5: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnf( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dnt(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qnt( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_ptukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qtukey( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: f64, + arg5: ::std::os::raw::c_int, + arg6: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_dwilcox(arg1: f64, arg2: f64, arg3: f64, arg4: ::std::os::raw::c_int) -> f64; + pub fn Rf_pwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qwilcox( + arg1: f64, + arg2: f64, + arg3: f64, + arg4: ::std::os::raw::c_int, + arg5: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rwilcox(arg1: f64, arg2: f64) -> f64; + pub fn wilcox_free(); + pub fn Rf_dsignrank(arg1: f64, arg2: f64, arg3: ::std::os::raw::c_int) -> f64; + pub fn Rf_psignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_qsignrank( + arg1: f64, + arg2: f64, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + ) -> f64; + pub fn Rf_rsignrank(arg1: f64) -> f64; + pub fn signrank_free(); + pub fn Rf_gammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn(arg1: f64) -> f64; + pub fn Rf_lgammafn_sign(arg1: f64, arg2: *mut ::std::os::raw::c_int) -> f64; + pub fn Rf_dpsifn( + arg1: f64, + arg2: ::std::os::raw::c_int, + arg3: ::std::os::raw::c_int, + arg4: ::std::os::raw::c_int, + arg5: *mut f64, + arg6: *mut ::std::os::raw::c_int, + arg7: *mut ::std::os::raw::c_int, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).systemSpecific) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(systemSpecific) - ) + pub fn Rf_psigamma(arg1: f64, arg2: f64) -> f64; + pub fn Rf_digamma(arg1: f64) -> f64; + pub fn Rf_trigamma(arg1: f64) -> f64; + pub fn Rf_tetragamma(arg1: f64) -> f64; + pub fn Rf_pentagamma(arg1: f64) -> f64; + pub fn Rf_beta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lbeta(arg1: f64, arg2: f64) -> f64; + pub fn Rf_choose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_lchoose(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_j(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_k(arg1: f64, arg2: f64, arg3: f64) -> f64; + pub fn Rf_bessel_y(arg1: f64, arg2: f64) -> f64; + pub fn Rf_bessel_i_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_j_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_bessel_k_ex(arg1: f64, arg2: f64, arg3: f64, arg4: *mut f64) -> f64; + pub fn Rf_bessel_y_ex(arg1: f64, arg2: f64, arg3: *mut f64) -> f64; + pub fn Rf_imax2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_imin2( + arg1: ::std::os::raw::c_int, + arg2: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; + pub fn Rf_fmax2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fmin2(arg1: f64, arg2: f64) -> f64; + pub fn Rf_sign(arg1: f64) -> f64; + pub fn Rf_fprec(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fround(arg1: f64, arg2: f64) -> f64; + pub fn Rf_fsign(arg1: f64, arg2: f64) -> f64; + pub fn Rf_ftrunc(arg1: f64) -> f64; + pub fn cospi(arg1: f64) -> f64; + pub fn sinpi(arg1: f64) -> f64; + pub fn tanpi(arg1: f64) -> f64; + pub fn Rtanpi(arg1: f64) -> f64; + pub fn R_ParseVector( + arg1: SEXP, + arg2: ::std::os::raw::c_int, + arg3: *mut ParseStatus, + arg4: SEXP, + ) -> SEXP; + pub fn R_new_altrep(aclass: R_altrep_class_t, data1: SEXP, data2: SEXP) -> SEXP; + pub fn R_make_altstring_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altinteger_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altreal_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlogical_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altraw_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altcomplex_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_make_altlist_class( + cname: *const ::std::os::raw::c_char, + pname: *const ::std::os::raw::c_char, + info: *mut DllInfo, + ) -> R_altrep_class_t; + pub fn R_altrep_inherits(x: SEXP, arg1: R_altrep_class_t) -> Rboolean; + pub fn R_set_altrep_UnserializeEX_method( + cls: R_altrep_class_t, + fun: R_altrep_UnserializeEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(GESystemDesc), - "::", - stringify!(callback) - ) + pub fn R_set_altrep_Unserialize_method( + cls: R_altrep_class_t, + fun: R_altrep_Unserialize_method_t, ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _GEDevDesc { - #[doc = "Stuff that the devices can see (and modify).\n All detailed in GraphicsDevice.h"] - pub dev: pDevDesc, - #[doc = "toggle for display list status"] - pub displayListOn: Rboolean, - #[doc = "display list"] - pub displayList: SEXP, - #[doc = "A pointer to the end of the display list\nto avoid traversing pairlists"] - pub DLlastElt: SEXP, - #[doc = "The last element of the display list\n just prior to when the display list\n was last initialised"] - pub savedSnapshot: SEXP, - #[doc = "Has the device received any output?"] - pub dirty: Rboolean, - #[doc = "Should a graphics call be stored\n on the display list?\n Set to FALSE by do_recordGraphics,\n do_dotcallgr, and do_Externalgr\n so that nested calls are not\n recorded on the display list"] - pub recordGraphics: Rboolean, - #[doc = "Stuff about the device that only graphics systems see.\n The graphics engine has no idea what is in here.\n Used by graphics systems to store system state per device."] - pub gesd: [*mut GESystemDesc; 24usize], - #[doc = "per-device setting for 'ask' (use NewFrameConfirm)"] - pub ask: Rboolean, - #[doc = "Is a device appending a path ?"] - pub appending: Rboolean, -} -#[test] -fn bindgen_test_layout__GEDevDesc() { - const UNINIT: ::std::mem::MaybeUninit<_GEDevDesc> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_GEDevDesc>(), - 248usize, - concat!("Size of: ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_Serialized_state_method( + cls: R_altrep_class_t, + fun: R_altrep_Serialized_state_method_t, ); - assert_eq!( - ::std::mem::align_of::<_GEDevDesc>(), - 8usize, - concat!("Alignment of ", stringify!(_GEDevDesc)) + pub fn R_set_altrep_DuplicateEX_method( + cls: R_altrep_class_t, + fun: R_altrep_DuplicateEX_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dev) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dev) - ) + pub fn R_set_altrep_Duplicate_method(cls: R_altrep_class_t, fun: R_altrep_Duplicate_method_t); + pub fn R_set_altrep_Coerce_method(cls: R_altrep_class_t, fun: R_altrep_Coerce_method_t); + pub fn R_set_altrep_Inspect_method(cls: R_altrep_class_t, fun: R_altrep_Inspect_method_t); + pub fn R_set_altrep_Length_method(cls: R_altrep_class_t, fun: R_altrep_Length_method_t); + pub fn R_set_altvec_Dataptr_method(cls: R_altrep_class_t, fun: R_altvec_Dataptr_method_t); + pub fn R_set_altvec_Dataptr_or_null_method( + cls: R_altrep_class_t, + fun: R_altvec_Dataptr_or_null_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayListOn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayListOn) - ) + pub fn R_set_altvec_Extract_subset_method( + cls: R_altrep_class_t, + fun: R_altvec_Extract_subset_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).displayList) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(displayList) - ) + pub fn R_set_altinteger_Elt_method(cls: R_altrep_class_t, fun: R_altinteger_Elt_method_t); + pub fn R_set_altinteger_Get_region_method( + cls: R_altrep_class_t, + fun: R_altinteger_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).DLlastElt) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(DLlastElt) - ) + pub fn R_set_altinteger_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altinteger_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).savedSnapshot) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(savedSnapshot) - ) + pub fn R_set_altinteger_No_NA_method(cls: R_altrep_class_t, fun: R_altinteger_No_NA_method_t); + pub fn R_set_altinteger_Sum_method(cls: R_altrep_class_t, fun: R_altinteger_Sum_method_t); + pub fn R_set_altinteger_Min_method(cls: R_altrep_class_t, fun: R_altinteger_Min_method_t); + pub fn R_set_altinteger_Max_method(cls: R_altrep_class_t, fun: R_altinteger_Max_method_t); + pub fn R_set_altreal_Elt_method(cls: R_altrep_class_t, fun: R_altreal_Elt_method_t); + pub fn R_set_altreal_Get_region_method( + cls: R_altrep_class_t, + fun: R_altreal_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dirty) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(dirty) - ) + pub fn R_set_altreal_Is_sorted_method(cls: R_altrep_class_t, fun: R_altreal_Is_sorted_method_t); + pub fn R_set_altreal_No_NA_method(cls: R_altrep_class_t, fun: R_altreal_No_NA_method_t); + pub fn R_set_altreal_Sum_method(cls: R_altrep_class_t, fun: R_altreal_Sum_method_t); + pub fn R_set_altreal_Min_method(cls: R_altrep_class_t, fun: R_altreal_Min_method_t); + pub fn R_set_altreal_Max_method(cls: R_altrep_class_t, fun: R_altreal_Max_method_t); + pub fn R_set_altlogical_Elt_method(cls: R_altrep_class_t, fun: R_altlogical_Elt_method_t); + pub fn R_set_altlogical_Get_region_method( + cls: R_altrep_class_t, + fun: R_altlogical_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).recordGraphics) as usize - ptr as usize }, - 44usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(recordGraphics) - ) + pub fn R_set_altlogical_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altlogical_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).gesd) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(gesd) - ) + pub fn R_set_altlogical_No_NA_method(cls: R_altrep_class_t, fun: R_altlogical_No_NA_method_t); + pub fn R_set_altlogical_Sum_method(cls: R_altrep_class_t, fun: R_altlogical_Sum_method_t); + pub fn R_set_altraw_Elt_method(cls: R_altrep_class_t, fun: R_altraw_Elt_method_t); + pub fn R_set_altraw_Get_region_method(cls: R_altrep_class_t, fun: R_altraw_Get_region_method_t); + pub fn R_set_altcomplex_Elt_method(cls: R_altrep_class_t, fun: R_altcomplex_Elt_method_t); + pub fn R_set_altcomplex_Get_region_method( + cls: R_altrep_class_t, + fun: R_altcomplex_Get_region_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ask) as usize - ptr as usize }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(ask) - ) + pub fn R_set_altstring_Elt_method(cls: R_altrep_class_t, fun: R_altstring_Elt_method_t); + pub fn R_set_altstring_Set_elt_method(cls: R_altrep_class_t, fun: R_altstring_Set_elt_method_t); + pub fn R_set_altstring_Is_sorted_method( + cls: R_altrep_class_t, + fun: R_altstring_Is_sorted_method_t, ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).appending) as usize - ptr as usize }, - 244usize, - concat!( - "Offset of field: ", - stringify!(_GEDevDesc), - "::", - stringify!(appending) - ) + pub fn R_set_altstring_No_NA_method(cls: R_altrep_class_t, fun: R_altstring_No_NA_method_t); + pub fn R_set_altlist_Elt_method(cls: R_altrep_class_t, fun: R_altlist_Elt_method_t); + pub fn R_set_altlist_Set_elt_method(cls: R_altrep_class_t, fun: R_altlist_Set_elt_method_t); + pub fn R_GE_getVersion() -> ::std::os::raw::c_int; + pub fn R_GE_checkVersionOrDie(version: ::std::os::raw::c_int); + pub fn Rf_ndevNumber(arg1: pDevDesc) -> ::std::os::raw::c_int; + pub fn Rf_NumDevices() -> ::std::os::raw::c_int; + #[doc = "Check for an available device slot"] + pub fn R_CheckDeviceAvailable(); + pub fn R_CheckDeviceAvailableBool() -> Rboolean; + pub fn Rf_curDevice() -> ::std::os::raw::c_int; + pub fn Rf_nextDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_prevDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_selectDevice(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn Rf_killDevice(arg1: ::std::os::raw::c_int); + pub fn Rf_NoDevices() -> ::std::os::raw::c_int; + pub fn Rf_NewFrameConfirm(arg1: pDevDesc); + pub fn Rf_doMouseEvent( + dd: pDevDesc, + event: R_MouseEvent, + buttons: ::std::os::raw::c_int, + x: f64, + y: f64, ); -} -pub type pGEDevDesc = *mut GEDevDesc; -extern "C" { + pub fn Rf_doKeybd(dd: pDevDesc, rkey: R_KeyName, keyname: *const ::std::os::raw::c_char); + pub fn Rf_doIdle(dd: pDevDesc); + pub fn Rf_doesIdle(dd: pDevDesc) -> Rboolean; + pub static mut R_interrupts_suspended: Rboolean; + pub static mut R_interrupts_pending: ::std::os::raw::c_int; + pub fn Rf_onintr(); + pub static mut mbcslocale: Rboolean; + pub fn Rf_AdobeSymbol2utf8( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + nwork: usize, + usePUA: Rboolean, + ) -> *mut ::std::os::raw::c_void; + pub fn Rf_utf8toAdobeSymbol( + out: *mut ::std::os::raw::c_char, + in_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn Rf_utf8Toutf8NoPUA(in_: *const ::std::os::raw::c_char) -> *const ::std::os::raw::c_char; + pub fn Rf_utf8ToLatin1AdobeSymbol2utf8( + in_: *const ::std::os::raw::c_char, + usePUA: Rboolean, + ) -> *const ::std::os::raw::c_char; + #[doc = "Translates Unicode point to UTF-8"] + pub fn Rf_ucstoutf8(s: *mut ::std::os::raw::c_char, c: ::std::os::raw::c_uint) -> usize; pub fn Rf_desc2GEDesc(dd: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceNumber(arg1: pGEDevDesc) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEgetDevice(arg1: ::std::os::raw::c_int) -> pGEDevDesc; -} -extern "C" { pub fn GEaddDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEaddDevice2(arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char); -} -extern "C" { pub fn GEaddDevice2f( arg1: pGEDevDesc, arg2: *const ::std::os::raw::c_char, arg3: *const ::std::os::raw::c_char, ); -} -extern "C" { pub fn GEkillDevice(arg1: pGEDevDesc); -} -extern "C" { pub fn GEcreateDevDesc(dev: pDevDesc) -> pGEDevDesc; -} -extern "C" { pub fn GEdestroyDevDesc(dd: pGEDevDesc); -} -extern "C" { pub fn GEsystemState( dd: pGEDevDesc, index: ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn GEregisterWithDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEregisterSystem(callback: GEcallback, systemRegisterIndex: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEunregisterSystem(registerIndex: ::std::os::raw::c_int); -} -extern "C" { pub fn GEhandleEvent(event: GEevent, dev: pDevDesc, data: SEXP) -> SEXP; -} -extern "C" { pub fn GEfromDeviceX(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceX(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceY(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceY(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceWidth(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceWidth(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEfromDeviceHeight(value: f64, to: GEUnit, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEtoDeviceHeight(value: f64, from: GEUnit, dd: pGEDevDesc) -> f64; -} -#[doc = "-------------------------------------------------------------------\n\n COLOUR CODE is concerned with the internals of R colour representation\n\n From colors.c, used in par.c, grid/src/gpar.c"] -pub type rcolor = ::std::os::raw::c_uint; -extern "C" { pub fn Rf_RGBpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn Rf_RGBpar3(arg1: SEXP, arg2: ::std::os::raw::c_int, arg3: rcolor) -> rcolor; -} -extern "C" { pub fn Rf_col2name(col: rcolor) -> *const ::std::os::raw::c_char; -} -extern "C" { #[doc = "Convert either a name or a #RRGGBB\\[AA\\] string to internal.\nBecause people were using it, it also converts \"1\", \"2\" ...\nto a colour in the palette, and \"0\" to transparent white."] pub fn R_GE_str2col(s: *const ::std::os::raw::c_char) -> rcolor; -} -extern "C" { pub fn GE_LENDpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_lineend; -} -extern "C" { pub fn GE_LENDget(lend: R_GE_lineend) -> SEXP; -} -extern "C" { pub fn GE_LJOINpar(value: SEXP, ind: ::std::os::raw::c_int) -> R_GE_linejoin; -} -extern "C" { pub fn GE_LJOINget(ljoin: R_GE_linejoin) -> SEXP; -} -extern "C" { pub fn GESetClip(x1: f64, y1: f64, x2: f64, y2: f64, dd: pGEDevDesc); -} -extern "C" { pub fn GENewPage(gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GELine(x1: f64, y1: f64, x2: f64, y2: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPolyline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5579,8 +4077,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPolygon( n: ::std::os::raw::c_int, x: *mut f64, @@ -5588,8 +4084,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEXspline( n: ::std::os::raw::c_int, x: *mut f64, @@ -5601,14 +4095,8 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> SEXP; -} -extern "C" { pub fn GECircle(x: f64, y: f64, radius: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GERect(x0: f64, y0: f64, x1: f64, y1: f64, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEPath( x: *mut f64, y: *mut f64, @@ -5618,8 +4106,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GERaster( raster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5633,11 +4119,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GECap(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEText( x: f64, y: f64, @@ -5649,11 +4131,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMode(mode: ::std::os::raw::c_int, dd: pGEDevDesc); -} -extern "C" { pub fn GESymbol( x: f64, y: f64, @@ -5662,11 +4140,7 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEPretty(lo: *mut f64, up: *mut f64, ndiv: *mut ::std::os::raw::c_int); -} -extern "C" { pub fn GEMetricInfo( c: ::std::os::raw::c_int, gc: pGEcontext, @@ -5675,24 +4149,18 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEStrWidth( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrHeight( str_: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn GEStrMetric( str_: *const ::std::os::raw::c_char, enc: cetype_t, @@ -5702,18 +4170,10 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEstring_to_pch(pch: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { #[doc = "-------------------------------------------------------------------\n\n LINE TEXTURE CODE is concerned with the internals of R\n line texture representation."] pub fn GE_LTYpar(arg1: SEXP, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_uint; -} -extern "C" { pub fn GE_LTYget(arg1: ::std::os::raw::c_uint) -> SEXP; -} -extern "C" { #[doc = "Raster operations"] pub fn R_GE_rasterScale( sraster: *mut ::std::os::raw::c_uint, @@ -5723,8 +4183,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterInterpolate( sraster: *mut ::std::os::raw::c_uint, sw: ::std::os::raw::c_int, @@ -5733,8 +4191,6 @@ extern "C" { dw: ::std::os::raw::c_int, dh: ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedSize( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5742,8 +4198,6 @@ extern "C" { wnew: *mut ::std::os::raw::c_int, hnew: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn R_GE_rasterRotatedOffset( w: ::std::os::raw::c_int, h: ::std::os::raw::c_int, @@ -5752,8 +4206,6 @@ extern "C" { xoff: *mut f64, yoff: *mut f64, ); -} -extern "C" { pub fn R_GE_rasterResizeForRotation( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5763,8 +4215,6 @@ extern "C" { hnew: ::std::os::raw::c_int, gc: pGEcontext, ); -} -extern "C" { pub fn R_GE_rasterRotate( sraster: *mut ::std::os::raw::c_uint, w: ::std::os::raw::c_int, @@ -5774,15 +4224,9 @@ extern "C" { gc: pGEcontext, perPixelAlpha: Rboolean, ); -} -extern "C" { #[doc = "From plotmath.c"] pub fn GEExpressionWidth(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionHeight(expr: SEXP, gc: pGEcontext, dd: pGEDevDesc) -> f64; -} -extern "C" { pub fn GEExpressionMetric( expr: SEXP, gc: pGEcontext, @@ -5791,8 +4235,6 @@ extern "C" { width: *mut f64, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEMathText( x: f64, y: f64, @@ -5803,8 +4245,6 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "From plot3d.c : used in package clines"] pub fn GEcontourLines( x: *mut f64, @@ -5815,8 +4255,6 @@ extern "C" { levels: *mut f64, nl: ::std::os::raw::c_int, ) -> SEXP; -} -extern "C" { #[doc = "From vfonts.c"] pub fn R_GE_VStrWidth( s: *const ::std::os::raw::c_char, @@ -5824,16 +4262,12 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VStrHeight( s: *const ::std::os::raw::c_char, enc: cetype_t, gc: pGEcontext, dd: pGEDevDesc, ) -> f64; -} -extern "C" { pub fn R_GE_VText( x: f64, y: f64, @@ -5845,55 +4279,25 @@ extern "C" { gc: pGEcontext, dd: pGEDevDesc, ); -} -extern "C" { pub fn GEcurrentDevice() -> pGEDevDesc; -} -extern "C" { pub fn GEdeviceDirty(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GEdirtyDevice(dd: pGEDevDesc); -} -extern "C" { pub fn GEcheckState(dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecording(call: SEXP, dd: pGEDevDesc) -> Rboolean; -} -extern "C" { pub fn GErecordGraphicOperation(op: SEXP, args: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEinitDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEplayDisplayList(dd: pGEDevDesc); -} -extern "C" { pub fn GEcopyDisplayList(fromDevice: ::std::os::raw::c_int); -} -extern "C" { pub fn GEcreateSnapshot(dd: pGEDevDesc) -> SEXP; -} -extern "C" { pub fn GEplaySnapshot(snapshot: SEXP, dd: pGEDevDesc); -} -extern "C" { pub fn GEonExit(); -} -extern "C" { pub fn GEnullDevice(); -} -extern "C" { pub fn Rf_CreateAtVector( axp: *mut f64, usr: *const f64, nint: ::std::os::raw::c_int, logflag: Rboolean, ) -> SEXP; -} -extern "C" { pub fn Rf_GAxisPars( min: *mut f64, max: *mut f64, @@ -5901,144 +4305,52 @@ extern "C" { log: Rboolean, axis: ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "Patterns - from ../../main/patterns.c"] pub fn R_GE_isPattern(x: SEXP) -> Rboolean; -} -extern "C" { pub fn R_GE_patternType(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_linearGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_linearGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_linearGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_linearGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientCX1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR1(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCX2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientCY2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientR2(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_radialGradientNumStops(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_radialGradientStop(pattern: SEXP, i: ::std::os::raw::c_int) -> f64; -} -extern "C" { pub fn R_GE_radialGradientColour(pattern: SEXP, i: ::std::os::raw::c_int) -> rcolor; -} -extern "C" { pub fn R_GE_radialGradientExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_tilingPatternFunction(pattern: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_tilingPatternX(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternY(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternWidth(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternHeight(pattern: SEXP) -> f64; -} -extern "C" { pub fn R_GE_tilingPatternExtend(pattern: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_clipPathFillRule(path: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn GEStroke(path: SEXP, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFill(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn GEFillStroke(path: SEXP, rule: ::std::os::raw::c_int, gc: pGEcontext, dd: pGEDevDesc); -} -extern "C" { pub fn R_GE_maskType(mask: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphInfoGlyphs(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphInfoFonts(glyphInfo: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphID(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphX(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphY(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFont(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphSize(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphColour(glyphs: SEXP) -> SEXP; -} -extern "C" { pub fn R_GE_glyphFontFile(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontIndex(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontFamily(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn R_GE_glyphFontWeight(glyphFont: SEXP) -> f64; -} -extern "C" { pub fn R_GE_glyphFontStyle(glyphFont: SEXP) -> ::std::os::raw::c_int; -} -extern "C" { pub fn R_GE_glyphFontPSname(glyphFont: SEXP) -> *const ::std::os::raw::c_char; -} -extern "C" { pub fn GEGlyph( n: ::std::os::raw::c_int, glyphs: *mut ::std::os::raw::c_int, @@ -6050,25 +4362,13 @@ extern "C" { rot: f64, dd: pGEDevDesc, ); -} -extern "C" { #[doc = "S Like Memory Management"] pub fn R_chk_calloc(arg1: usize, arg2: usize) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_realloc( arg1: *mut ::std::os::raw::c_void, arg2: usize, ) -> *mut ::std::os::raw::c_void; -} -extern "C" { pub fn R_chk_free(arg1: *mut ::std::os::raw::c_void); -} -#[doc = "../../appl/integrate.c"] -pub type integr_fn = ::std::option::Option< - unsafe extern "C" fn(x: *mut f64, n: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void), ->; -extern "C" { #[doc = "vectorizing function f(x\\[1:n\\], ...) -> x\\[\\] {overwriting x\\[\\]}."] pub fn Rdqags( f: integr_fn, @@ -6087,8 +4387,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn Rdqagi( f: integr_fn, ex: *mut ::std::os::raw::c_void, @@ -6106,24 +4404,6 @@ extern "C" { iwork: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -#[doc = "main/optim.c"] -pub type optimfn = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut ::std::os::raw::c_void, - ) -> f64, ->; -pub type optimgr = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { pub fn vmmin( n: ::std::os::raw::c_int, b: *mut f64, @@ -6141,8 +4421,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, fail: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn nmmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6160,8 +4438,6 @@ extern "C" { fncount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn cgmin( n: ::std::os::raw::c_int, Bvec: *mut f64, @@ -6179,8 +4455,6 @@ extern "C" { grcount: *mut ::std::os::raw::c_int, maxit: ::std::os::raw::c_int, ); -} -extern "C" { pub fn lbfgsb( n: ::std::os::raw::c_int, m: ::std::os::raw::c_int, @@ -6202,8 +4476,6 @@ extern "C" { trace: ::std::os::raw::c_int, nREPORT: ::std::os::raw::c_int, ); -} -extern "C" { pub fn samin( n: ::std::os::raw::c_int, pb: *mut f64, @@ -6215,8 +4487,6 @@ extern "C" { trace: ::std::os::raw::c_int, ex: *mut ::std::os::raw::c_void, ); -} -extern "C" { pub fn dqrqty_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6226,8 +4496,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qty: *mut f64, ); -} -extern "C" { pub fn dqrqy_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6237,8 +4505,6 @@ extern "C" { ny: *mut ::std::os::raw::c_int, qy: *mut f64, ); -} -extern "C" { pub fn dqrcf_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6249,8 +4515,6 @@ extern "C" { b: *mut f64, info: *mut ::std::os::raw::c_int, ); -} -extern "C" { #[doc = "appl/pretty.c: for use in engine.c and util.c"] pub fn R_pretty( lo: *mut f64, @@ -6262,27 +4526,6 @@ extern "C" { eps_correction: ::std::os::raw::c_int, return_bounds: ::std::os::raw::c_int, ) -> f64; -} -#[doc = "type of pointer to the target and gradient functions"] -pub type fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut f64, - arg3: *mut f64, - arg4: *mut ::std::os::raw::c_void, - ), ->; -#[doc = "type of pointer to the hessian functions"] -pub type d2fcn_p = ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut f64, - arg4: *mut f64, - arg5: *mut ::std::os::raw::c_void, - ), ->; -extern "C" { #[doc = "Also used in packages nlme, pcaPP"] pub fn optif9( nr: ::std::os::raw::c_int, @@ -6313,8 +4556,6 @@ extern "C" { wrk: *mut f64, itncnt: *mut ::std::os::raw::c_int, ); -} -extern "C" { pub fn dqrdc2_( x: *mut f64, ldx: *mut ::std::os::raw::c_int, @@ -6326,8 +4567,6 @@ extern "C" { pivot: *mut ::std::os::raw::c_int, work: *mut f64, ); -} -extern "C" { pub fn dqrls_( x: *mut f64, n: *mut ::std::os::raw::c_int, @@ -6343,93 +4582,12 @@ extern "C" { qraux: *mut f64, work: *mut f64, ); -} -pub const RNGtype_WICHMANN_HILL: RNGtype = 0; -pub const RNGtype_MARSAGLIA_MULTICARRY: RNGtype = 1; -pub const RNGtype_SUPER_DUPER: RNGtype = 2; -pub const RNGtype_MERSENNE_TWISTER: RNGtype = 3; -pub const RNGtype_KNUTH_TAOCP: RNGtype = 4; -pub const RNGtype_USER_UNIF: RNGtype = 5; -pub const RNGtype_KNUTH_TAOCP2: RNGtype = 6; -pub const RNGtype_LECUYER_CMRG: RNGtype = 7; -pub type RNGtype = u32; -pub const N01type_BUGGY_KINDERMAN_RAMAGE: N01type = 0; -pub const N01type_AHRENS_DIETER: N01type = 1; -pub const N01type_BOX_MULLER: N01type = 2; -pub const N01type_USER_NORM: N01type = 3; -pub const N01type_INVERSION: N01type = 4; -pub const N01type_KINDERMAN_RAMAGE: N01type = 5; -#[doc = "Different kinds of \"N(0,1)\" generators :"] -pub type N01type = u32; -pub const Sampletype_ROUNDING: Sampletype = 0; -pub const Sampletype_REJECTION: Sampletype = 1; -#[doc = "Different ways to generate discrete uniform samples"] -pub type Sampletype = u32; -extern "C" { pub fn R_sample_kind() -> Sampletype; -} -extern "C" { pub fn GetRNGstate(); -} -extern "C" { pub fn PutRNGstate(); -} -pub type Int32 = ::std::os::raw::c_uint; -extern "C" { pub fn user_unif_rand() -> *mut f64; -} -extern "C" { pub fn user_unif_init(arg1: Int32); -} -extern "C" { pub fn user_unif_nseed() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_unif_seedloc() -> *mut ::std::os::raw::c_int; -} -extern "C" { pub fn user_norm_rand() -> *mut f64; } -#[doc = "R 4.3 redefined `Rcomplex` to a union for compatibility with Fortran.\n But the old definition is compatible both the union version\n and the struct version.\n See: \n
"] -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct Rcomplex { - pub r: f64, - pub i: f64, -} -#[test] -fn bindgen_test_layout_Rcomplex() { - const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(Rcomplex)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(Rcomplex)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Rcomplex), - "::", - stringify!(i) - ) - ); -} -pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/build.rs b/build.rs index eee5c1b5..90581c18 100644 --- a/build.rs +++ b/build.rs @@ -457,6 +457,7 @@ fn generate_bindings(r_paths: &InstallationPaths, version_info: &RVersionInfo) { .allowlist_var(&allowlist_pattern) .allowlist_type(&allowlist_pattern) .translate_enum_integer_types(true) + .merge_extern_blocks(true) // The input header we would like to generate // bindings for. .header("wrapper.h")