/* automatically generated by rust-bindgen 0.69.2 */ #[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)] pub mod root { #[allow(unused_imports)] use self::super::root; pub type va_list = [u64; 4usize]; pub mod std { #[allow(unused_imports)] use self::super::super::root; } pub type jboolean = u8; pub type jbyte = i8; pub type jchar = u16; pub type jshort = i16; pub type jint = i32; pub type jlong = i64; pub type jfloat = f32; pub type jdouble = f64; pub type jsize = root::jint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jobject { pub _address: u8, } #[test] fn bindgen_test_layout__jobject() { assert_eq!( ::std::mem::size_of::<_jobject>(), 1usize, concat!("Size of: ", stringify!(_jobject)) ); assert_eq!( ::std::mem::align_of::<_jobject>(), 1usize, concat!("Alignment of ", stringify!(_jobject)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jclass { pub _address: u8, } #[test] fn bindgen_test_layout__jclass() { assert_eq!( ::std::mem::size_of::<_jclass>(), 1usize, concat!("Size of: ", stringify!(_jclass)) ); assert_eq!( ::std::mem::align_of::<_jclass>(), 1usize, concat!("Alignment of ", stringify!(_jclass)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jstring { pub _address: u8, } #[test] fn bindgen_test_layout__jstring() { assert_eq!( ::std::mem::size_of::<_jstring>(), 1usize, concat!("Size of: ", stringify!(_jstring)) ); assert_eq!( ::std::mem::align_of::<_jstring>(), 1usize, concat!("Alignment of ", stringify!(_jstring)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jarray { pub _address: u8, } #[test] fn bindgen_test_layout__jarray() { assert_eq!( ::std::mem::size_of::<_jarray>(), 1usize, concat!("Size of: ", stringify!(_jarray)) ); assert_eq!( ::std::mem::align_of::<_jarray>(), 1usize, concat!("Alignment of ", stringify!(_jarray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jobjectArray { pub _address: u8, } #[test] fn bindgen_test_layout__jobjectArray() { assert_eq!( ::std::mem::size_of::<_jobjectArray>(), 1usize, concat!("Size of: ", stringify!(_jobjectArray)) ); assert_eq!( ::std::mem::align_of::<_jobjectArray>(), 1usize, concat!("Alignment of ", stringify!(_jobjectArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jbooleanArray { pub _address: u8, } #[test] fn bindgen_test_layout__jbooleanArray() { assert_eq!( ::std::mem::size_of::<_jbooleanArray>(), 1usize, concat!("Size of: ", stringify!(_jbooleanArray)) ); assert_eq!( ::std::mem::align_of::<_jbooleanArray>(), 1usize, concat!("Alignment of ", stringify!(_jbooleanArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jbyteArray { pub _address: u8, } #[test] fn bindgen_test_layout__jbyteArray() { assert_eq!( ::std::mem::size_of::<_jbyteArray>(), 1usize, concat!("Size of: ", stringify!(_jbyteArray)) ); assert_eq!( ::std::mem::align_of::<_jbyteArray>(), 1usize, concat!("Alignment of ", stringify!(_jbyteArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jcharArray { pub _address: u8, } #[test] fn bindgen_test_layout__jcharArray() { assert_eq!( ::std::mem::size_of::<_jcharArray>(), 1usize, concat!("Size of: ", stringify!(_jcharArray)) ); assert_eq!( ::std::mem::align_of::<_jcharArray>(), 1usize, concat!("Alignment of ", stringify!(_jcharArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jshortArray { pub _address: u8, } #[test] fn bindgen_test_layout__jshortArray() { assert_eq!( ::std::mem::size_of::<_jshortArray>(), 1usize, concat!("Size of: ", stringify!(_jshortArray)) ); assert_eq!( ::std::mem::align_of::<_jshortArray>(), 1usize, concat!("Alignment of ", stringify!(_jshortArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jintArray { pub _address: u8, } #[test] fn bindgen_test_layout__jintArray() { assert_eq!( ::std::mem::size_of::<_jintArray>(), 1usize, concat!("Size of: ", stringify!(_jintArray)) ); assert_eq!( ::std::mem::align_of::<_jintArray>(), 1usize, concat!("Alignment of ", stringify!(_jintArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jlongArray { pub _address: u8, } #[test] fn bindgen_test_layout__jlongArray() { assert_eq!( ::std::mem::size_of::<_jlongArray>(), 1usize, concat!("Size of: ", stringify!(_jlongArray)) ); assert_eq!( ::std::mem::align_of::<_jlongArray>(), 1usize, concat!("Alignment of ", stringify!(_jlongArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jfloatArray { pub _address: u8, } #[test] fn bindgen_test_layout__jfloatArray() { assert_eq!( ::std::mem::size_of::<_jfloatArray>(), 1usize, concat!("Size of: ", stringify!(_jfloatArray)) ); assert_eq!( ::std::mem::align_of::<_jfloatArray>(), 1usize, concat!("Alignment of ", stringify!(_jfloatArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jdoubleArray { pub _address: u8, } #[test] fn bindgen_test_layout__jdoubleArray() { assert_eq!( ::std::mem::size_of::<_jdoubleArray>(), 1usize, concat!("Size of: ", stringify!(_jdoubleArray)) ); assert_eq!( ::std::mem::align_of::<_jdoubleArray>(), 1usize, concat!("Alignment of ", stringify!(_jdoubleArray)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jthrowable { pub _address: u8, } #[test] fn bindgen_test_layout__jthrowable() { assert_eq!( ::std::mem::size_of::<_jthrowable>(), 1usize, concat!("Size of: ", stringify!(_jthrowable)) ); assert_eq!( ::std::mem::align_of::<_jthrowable>(), 1usize, concat!("Alignment of ", stringify!(_jthrowable)) ); } pub type jobject = *mut root::_jobject; pub type jclass = *mut root::_jclass; pub type jstring = *mut root::_jstring; pub type jarray = *mut root::_jarray; pub type jobjectArray = *mut root::_jobjectArray; pub type jbooleanArray = *mut root::_jbooleanArray; pub type jbyteArray = *mut root::_jbyteArray; pub type jcharArray = *mut root::_jcharArray; pub type jshortArray = *mut root::_jshortArray; pub type jintArray = *mut root::_jintArray; pub type jlongArray = *mut root::_jlongArray; pub type jfloatArray = *mut root::_jfloatArray; pub type jdoubleArray = *mut root::_jdoubleArray; pub type jthrowable = *mut root::_jthrowable; pub type jweak = *mut root::_jobject; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jfieldID { _unused: [u8; 0], } pub type jfieldID = *mut root::_jfieldID; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _jmethodID { _unused: [u8; 0], } pub type jmethodID = *mut root::_jmethodID; #[repr(C)] #[derive(Copy, Clone)] pub union jvalue { pub z: root::jboolean, pub b: root::jbyte, pub c: root::jchar, pub s: root::jshort, pub i: root::jint, pub j: root::jlong, pub f: root::jfloat, pub d: root::jdouble, pub l: root::jobject, } #[test] fn bindgen_test_layout_jvalue() { 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!(jvalue)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(jvalue)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).z) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(z)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(b)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(c)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(s)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(i)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).j) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(j)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(f)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(d)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).l) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(jvalue), "::", stringify!(l)) ); } pub const jobjectRefType_JNIInvalidRefType: root::jobjectRefType = 0; pub const jobjectRefType_JNILocalRefType: root::jobjectRefType = 1; pub const jobjectRefType_JNIGlobalRefType: root::jobjectRefType = 2; pub const jobjectRefType_JNIWeakGlobalRefType: root::jobjectRefType = 3; pub type jobjectRefType = ::std::os::raw::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct JNINativeMethod { pub name: *const ::std::os::raw::c_char, pub signature: *const ::std::os::raw::c_char, pub fnPtr: *mut ::std::os::raw::c_void, } #[test] fn bindgen_test_layout_JNINativeMethod() { const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(JNINativeMethod)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(JNINativeMethod)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(JNINativeMethod), "::", stringify!(name) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).signature) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(JNINativeMethod), "::", stringify!(signature) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).fnPtr) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(JNINativeMethod), "::", stringify!(fnPtr) ) ); } pub type JNIEnv = root::_JNIEnv; pub type JavaVM = root::_JavaVM; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct JNINativeInterface { pub reserved0: *mut ::std::os::raw::c_void, pub reserved1: *mut ::std::os::raw::c_void, pub reserved2: *mut ::std::os::raw::c_void, pub reserved3: *mut ::std::os::raw::c_void, pub GetVersion: ::std::option::Option root::jint>, pub DefineClass: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *const ::std::os::raw::c_char, arg3: root::jobject, arg4: *const root::jbyte, arg5: root::jsize, ) -> root::jclass, >, pub FindClass: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *const ::std::os::raw::c_char, ) -> root::jclass, >, pub FromReflectedMethod: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jmethodID, >, pub FromReflectedField: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jfieldID, >, pub ToReflectedMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::jboolean, ) -> root::jobject, >, pub GetSuperclass: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jclass) -> root::jclass, >, pub IsAssignableFrom: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jclass, ) -> root::jboolean, >, pub ToReflectedField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jboolean, ) -> root::jobject, >, pub Throw: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jthrowable) -> root::jint, >, pub ThrowNew: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const ::std::os::raw::c_char, ) -> root::jint, >, pub ExceptionOccurred: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv) -> root::jthrowable, >, pub ExceptionDescribe: ::std::option::Option, pub ExceptionClear: ::std::option::Option, pub FatalError: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: *const ::std::os::raw::c_char), >, pub PushLocalFrame: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jint) -> root::jint, >, pub PopLocalFrame: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jobject, >, pub NewGlobalRef: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jobject, >, pub DeleteGlobalRef: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject), >, pub DeleteLocalRef: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject), >, pub IsSameObject: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jobject, ) -> root::jboolean, >, pub NewLocalRef: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jobject, >, pub EnsureLocalCapacity: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jint) -> root::jint, >, pub AllocObject: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jclass) -> root::jobject, >, pub NewObject: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jobject, >, pub NewObjectV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jobject, >, pub NewObjectA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jobject, >, pub GetObjectClass: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jclass, >, pub IsInstanceOf: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, ) -> root::jboolean, >, pub GetMethodID: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const ::std::os::raw::c_char, arg4: *const ::std::os::raw::c_char, ) -> root::jmethodID, >, pub CallObjectMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jobject, >, pub CallObjectMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jobject, >, pub CallObjectMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jobject, >, pub CallBooleanMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jboolean, >, pub CallBooleanMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jboolean, >, pub CallBooleanMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jboolean, >, pub CallByteMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jbyte, >, pub CallByteMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jbyte, >, pub CallByteMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jbyte, >, pub CallCharMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jchar, >, pub CallCharMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jchar, >, pub CallCharMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jchar, >, pub CallShortMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jshort, >, pub CallShortMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jshort, >, pub CallShortMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jshort, >, pub CallIntMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jint, >, pub CallIntMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jint, >, pub CallIntMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jint, >, pub CallLongMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jlong, >, pub CallLongMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jlong, >, pub CallLongMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jlong, >, pub CallFloatMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jfloat, >, pub CallFloatMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jfloat, >, pub CallFloatMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jfloat, >, pub CallDoubleMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ) -> root::jdouble, >, pub CallDoubleMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jdouble, >, pub CallDoubleMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jdouble, >, pub CallVoidMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, ... ), >, pub CallVoidMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: root::va_list, ), >, pub CallVoidMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jmethodID, arg4: *const root::jvalue, ), >, pub CallNonvirtualObjectMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jobject, >, pub CallNonvirtualObjectMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jobject, >, pub CallNonvirtualObjectMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jobject, >, pub CallNonvirtualBooleanMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jboolean, >, pub CallNonvirtualBooleanMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jboolean, >, pub CallNonvirtualBooleanMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jboolean, >, pub CallNonvirtualByteMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jbyte, >, pub CallNonvirtualByteMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jbyte, >, pub CallNonvirtualByteMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jbyte, >, pub CallNonvirtualCharMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jchar, >, pub CallNonvirtualCharMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jchar, >, pub CallNonvirtualCharMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jchar, >, pub CallNonvirtualShortMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jshort, >, pub CallNonvirtualShortMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jshort, >, pub CallNonvirtualShortMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jshort, >, pub CallNonvirtualIntMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jint, >, pub CallNonvirtualIntMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jint, >, pub CallNonvirtualIntMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jint, >, pub CallNonvirtualLongMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jlong, >, pub CallNonvirtualLongMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jlong, >, pub CallNonvirtualLongMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jlong, >, pub CallNonvirtualFloatMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jfloat, >, pub CallNonvirtualFloatMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jfloat, >, pub CallNonvirtualFloatMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jfloat, >, pub CallNonvirtualDoubleMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ) -> root::jdouble, >, pub CallNonvirtualDoubleMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ) -> root::jdouble, >, pub CallNonvirtualDoubleMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ) -> root::jdouble, >, pub CallNonvirtualVoidMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, ... ), >, pub CallNonvirtualVoidMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: root::va_list, ), >, pub CallNonvirtualVoidMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jclass, arg4: root::jmethodID, arg5: *const root::jvalue, ), >, pub GetFieldID: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const ::std::os::raw::c_char, arg4: *const ::std::os::raw::c_char, ) -> root::jfieldID, >, pub GetObjectField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jobject, >, pub GetBooleanField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jboolean, >, pub GetByteField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jbyte, >, pub GetCharField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jchar, >, pub GetShortField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jshort, >, pub GetIntField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jint, >, pub GetLongField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jlong, >, pub GetFloatField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jfloat, >, pub GetDoubleField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, ) -> root::jdouble, >, pub SetObjectField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jobject, ), >, pub SetBooleanField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jboolean, ), >, pub SetByteField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jbyte, ), >, pub SetCharField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jchar, ), >, pub SetShortField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jshort, ), >, pub SetIntField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jint, ), >, pub SetLongField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jlong, ), >, pub SetFloatField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jfloat, ), >, pub SetDoubleField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, arg3: root::jfieldID, arg4: root::jdouble, ), >, pub GetStaticMethodID: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const ::std::os::raw::c_char, arg4: *const ::std::os::raw::c_char, ) -> root::jmethodID, >, pub CallStaticObjectMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jobject, >, pub CallStaticObjectMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jobject, >, pub CallStaticObjectMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jobject, >, pub CallStaticBooleanMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jboolean, >, pub CallStaticBooleanMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jboolean, >, pub CallStaticBooleanMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jboolean, >, pub CallStaticByteMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jbyte, >, pub CallStaticByteMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jbyte, >, pub CallStaticByteMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jbyte, >, pub CallStaticCharMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jchar, >, pub CallStaticCharMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jchar, >, pub CallStaticCharMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jchar, >, pub CallStaticShortMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jshort, >, pub CallStaticShortMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jshort, >, pub CallStaticShortMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jshort, >, pub CallStaticIntMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jint, >, pub CallStaticIntMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jint, >, pub CallStaticIntMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jint, >, pub CallStaticLongMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jlong, >, pub CallStaticLongMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jlong, >, pub CallStaticLongMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jlong, >, pub CallStaticFloatMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jfloat, >, pub CallStaticFloatMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jfloat, >, pub CallStaticFloatMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jfloat, >, pub CallStaticDoubleMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ) -> root::jdouble, >, pub CallStaticDoubleMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ) -> root::jdouble, >, pub CallStaticDoubleMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ) -> root::jdouble, >, pub CallStaticVoidMethod: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, ... ), >, pub CallStaticVoidMethodV: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: root::va_list, ), >, pub CallStaticVoidMethodA: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jmethodID, arg4: *const root::jvalue, ), >, pub GetStaticFieldID: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const ::std::os::raw::c_char, arg4: *const ::std::os::raw::c_char, ) -> root::jfieldID, >, pub GetStaticObjectField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jobject, >, pub GetStaticBooleanField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jboolean, >, pub GetStaticByteField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jbyte, >, pub GetStaticCharField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jchar, >, pub GetStaticShortField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jshort, >, pub GetStaticIntField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jint, >, pub GetStaticLongField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jlong, >, pub GetStaticFloatField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jfloat, >, pub GetStaticDoubleField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, ) -> root::jdouble, >, pub SetStaticObjectField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jobject, ), >, pub SetStaticBooleanField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jboolean, ), >, pub SetStaticByteField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jbyte, ), >, pub SetStaticCharField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jchar, ), >, pub SetStaticShortField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jshort, ), >, pub SetStaticIntField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jint, ), >, pub SetStaticLongField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jlong, ), >, pub SetStaticFloatField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jfloat, ), >, pub SetStaticDoubleField: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: root::jfieldID, arg4: root::jdouble, ), >, pub NewString: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *const root::jchar, arg3: root::jsize, ) -> root::jstring, >, pub GetStringLength: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jstring) -> root::jsize, >, pub GetStringChars: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *mut root::jboolean, ) -> *const root::jchar, >, pub ReleaseStringChars: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *const root::jchar, ), >, pub NewStringUTF: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *const ::std::os::raw::c_char, ) -> root::jstring, >, pub GetStringUTFLength: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jstring) -> root::jsize, >, pub GetStringUTFChars: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *mut root::jboolean, ) -> *const ::std::os::raw::c_char, >, pub ReleaseStringUTFChars: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *const ::std::os::raw::c_char, ), >, pub GetArrayLength: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jarray) -> root::jsize, >, pub NewObjectArray: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jsize, arg3: root::jclass, arg4: root::jobject, ) -> root::jobjectArray, >, pub GetObjectArrayElement: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobjectArray, arg3: root::jsize, ) -> root::jobject, >, pub SetObjectArrayElement: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobjectArray, arg3: root::jsize, arg4: root::jobject, ), >, pub NewBooleanArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jbooleanArray, >, pub NewByteArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jbyteArray, >, pub NewCharArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jcharArray, >, pub NewShortArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jshortArray, >, pub NewIntArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jintArray, >, pub NewLongArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jlongArray, >, pub NewFloatArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jfloatArray, >, pub NewDoubleArray: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jsize) -> root::jdoubleArray, >, pub GetBooleanArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbooleanArray, arg3: *mut root::jboolean, ) -> *mut root::jboolean, >, pub GetByteArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbyteArray, arg3: *mut root::jboolean, ) -> *mut root::jbyte, >, pub GetCharArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jcharArray, arg3: *mut root::jboolean, ) -> *mut root::jchar, >, pub GetShortArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jshortArray, arg3: *mut root::jboolean, ) -> *mut root::jshort, >, pub GetIntArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jintArray, arg3: *mut root::jboolean, ) -> *mut root::jint, >, pub GetLongArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jlongArray, arg3: *mut root::jboolean, ) -> *mut root::jlong, >, pub GetFloatArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jfloatArray, arg3: *mut root::jboolean, ) -> *mut root::jfloat, >, pub GetDoubleArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jdoubleArray, arg3: *mut root::jboolean, ) -> *mut root::jdouble, >, pub ReleaseBooleanArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbooleanArray, arg3: *mut root::jboolean, arg4: root::jint, ), >, pub ReleaseByteArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbyteArray, arg3: *mut root::jbyte, arg4: root::jint, ), >, pub ReleaseCharArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jcharArray, arg3: *mut root::jchar, arg4: root::jint, ), >, pub ReleaseShortArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jshortArray, arg3: *mut root::jshort, arg4: root::jint, ), >, pub ReleaseIntArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jintArray, arg3: *mut root::jint, arg4: root::jint, ), >, pub ReleaseLongArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jlongArray, arg3: *mut root::jlong, arg4: root::jint, ), >, pub ReleaseFloatArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jfloatArray, arg3: *mut root::jfloat, arg4: root::jint, ), >, pub ReleaseDoubleArrayElements: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jdoubleArray, arg3: *mut root::jdouble, arg4: root::jint, ), >, pub GetBooleanArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbooleanArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jboolean, ), >, pub GetByteArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbyteArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jbyte, ), >, pub GetCharArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jcharArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jchar, ), >, pub GetShortArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jshortArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jshort, ), >, pub GetIntArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jintArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jint, ), >, pub GetLongArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jlongArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jlong, ), >, pub GetFloatArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jfloatArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jfloat, ), >, pub GetDoubleArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jdoubleArray, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jdouble, ), >, pub SetBooleanArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbooleanArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jboolean, ), >, pub SetByteArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jbyteArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jbyte, ), >, pub SetCharArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jcharArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jchar, ), >, pub SetShortArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jshortArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jshort, ), >, pub SetIntArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jintArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jint, ), >, pub SetLongArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jlongArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jlong, ), >, pub SetFloatArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jfloatArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jfloat, ), >, pub SetDoubleArrayRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jdoubleArray, arg3: root::jsize, arg4: root::jsize, arg5: *const root::jdouble, ), >, pub RegisterNatives: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jclass, arg3: *const root::JNINativeMethod, arg4: root::jint, ) -> root::jint, >, pub UnregisterNatives: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jclass) -> root::jint, >, pub MonitorEnter: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jint, >, pub MonitorExit: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jint, >, pub GetJavaVM: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *mut *mut root::JavaVM, ) -> root::jint, >, pub GetStringRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: root::jsize, arg4: root::jsize, arg5: *mut root::jchar, ), >, pub GetStringUTFRegion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: root::jsize, arg4: root::jsize, arg5: *mut ::std::os::raw::c_char, ), >, pub GetPrimitiveArrayCritical: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jarray, arg3: *mut root::jboolean, ) -> *mut ::std::os::raw::c_void, >, pub ReleasePrimitiveArrayCritical: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jarray, arg3: *mut ::std::os::raw::c_void, arg4: root::jint, ), >, pub GetStringCritical: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *mut root::jboolean, ) -> *const root::jchar, >, pub ReleaseStringCritical: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jstring, arg3: *const root::jchar, ), >, pub NewWeakGlobalRef: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jweak, >, pub DeleteWeakGlobalRef: ::std::option::Option, pub ExceptionCheck: ::std::option::Option root::jboolean>, pub NewDirectByteBuffer: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *mut ::std::os::raw::c_void, arg3: root::jlong, ) -> root::jobject, >, pub GetDirectBufferAddress: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, ) -> *mut ::std::os::raw::c_void, >, pub GetDirectBufferCapacity: ::std::option::Option< unsafe extern "C" fn(arg1: *mut root::JNIEnv, arg2: root::jobject) -> root::jlong, >, pub GetObjectRefType: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: root::jobject, ) -> root::jobjectRefType, >, } #[test] fn bindgen_test_layout_JNINativeInterface() { const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::(), 1864usize, concat!("Size of: ", stringify!(JNINativeInterface)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(JNINativeInterface)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved0) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(reserved0) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved3) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(reserved3) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetVersion) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetVersion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DefineClass) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(DefineClass) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).FindClass) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(FindClass) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).FromReflectedMethod) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(FromReflectedMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).FromReflectedField) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(FromReflectedField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ToReflectedMethod) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ToReflectedMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetSuperclass) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetSuperclass) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).IsAssignableFrom) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(IsAssignableFrom) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ToReflectedField) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ToReflectedField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).Throw) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(Throw) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ThrowNew) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ThrowNew) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ExceptionOccurred) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ExceptionOccurred) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ExceptionDescribe) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ExceptionDescribe) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ExceptionClear) as usize - ptr as usize }, 136usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ExceptionClear) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).FatalError) as usize - ptr as usize }, 144usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(FatalError) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).PushLocalFrame) as usize - ptr as usize }, 152usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(PushLocalFrame) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).PopLocalFrame) as usize - ptr as usize }, 160usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(PopLocalFrame) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewGlobalRef) as usize - ptr as usize }, 168usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewGlobalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DeleteGlobalRef) as usize - ptr as usize }, 176usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(DeleteGlobalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DeleteLocalRef) as usize - ptr as usize }, 184usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(DeleteLocalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).IsSameObject) as usize - ptr as usize }, 192usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(IsSameObject) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewLocalRef) as usize - ptr as usize }, 200usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewLocalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).EnsureLocalCapacity) as usize - ptr as usize }, 208usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(EnsureLocalCapacity) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).AllocObject) as usize - ptr as usize }, 216usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(AllocObject) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewObject) as usize - ptr as usize }, 224usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewObject) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewObjectV) as usize - ptr as usize }, 232usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewObjectV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewObjectA) as usize - ptr as usize }, 240usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewObjectA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetObjectClass) as usize - ptr as usize }, 248usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetObjectClass) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).IsInstanceOf) as usize - ptr as usize }, 256usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(IsInstanceOf) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetMethodID) as usize - ptr as usize }, 264usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetMethodID) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallObjectMethod) as usize - ptr as usize }, 272usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallObjectMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallObjectMethodV) as usize - ptr as usize }, 280usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallObjectMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallObjectMethodA) as usize - ptr as usize }, 288usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallObjectMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallBooleanMethod) as usize - ptr as usize }, 296usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallBooleanMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallBooleanMethodV) as usize - ptr as usize }, 304usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallBooleanMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallBooleanMethodA) as usize - ptr as usize }, 312usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallBooleanMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallByteMethod) as usize - ptr as usize }, 320usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallByteMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallByteMethodV) as usize - ptr as usize }, 328usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallByteMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallByteMethodA) as usize - ptr as usize }, 336usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallByteMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallCharMethod) as usize - ptr as usize }, 344usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallCharMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallCharMethodV) as usize - ptr as usize }, 352usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallCharMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallCharMethodA) as usize - ptr as usize }, 360usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallCharMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallShortMethod) as usize - ptr as usize }, 368usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallShortMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallShortMethodV) as usize - ptr as usize }, 376usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallShortMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallShortMethodA) as usize - ptr as usize }, 384usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallShortMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallIntMethod) as usize - ptr as usize }, 392usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallIntMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallIntMethodV) as usize - ptr as usize }, 400usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallIntMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallIntMethodA) as usize - ptr as usize }, 408usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallIntMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallLongMethod) as usize - ptr as usize }, 416usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallLongMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallLongMethodV) as usize - ptr as usize }, 424usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallLongMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallLongMethodA) as usize - ptr as usize }, 432usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallLongMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallFloatMethod) as usize - ptr as usize }, 440usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallFloatMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallFloatMethodV) as usize - ptr as usize }, 448usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallFloatMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallFloatMethodA) as usize - ptr as usize }, 456usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallFloatMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallDoubleMethod) as usize - ptr as usize }, 464usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallDoubleMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallDoubleMethodV) as usize - ptr as usize }, 472usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallDoubleMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallDoubleMethodA) as usize - ptr as usize }, 480usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallDoubleMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallVoidMethod) as usize - ptr as usize }, 488usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallVoidMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallVoidMethodV) as usize - ptr as usize }, 496usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallVoidMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallVoidMethodA) as usize - ptr as usize }, 504usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallVoidMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualObjectMethod) as usize - ptr as usize }, 512usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualObjectMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualObjectMethodV) as usize - ptr as usize }, 520usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualObjectMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualObjectMethodA) as usize - ptr as usize }, 528usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualObjectMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualBooleanMethod) as usize - ptr as usize }, 536usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualBooleanMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualBooleanMethodV) as usize - ptr as usize }, 544usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualBooleanMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualBooleanMethodA) as usize - ptr as usize }, 552usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualBooleanMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualByteMethod) as usize - ptr as usize }, 560usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualByteMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualByteMethodV) as usize - ptr as usize }, 568usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualByteMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualByteMethodA) as usize - ptr as usize }, 576usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualByteMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualCharMethod) as usize - ptr as usize }, 584usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualCharMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualCharMethodV) as usize - ptr as usize }, 592usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualCharMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualCharMethodA) as usize - ptr as usize }, 600usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualCharMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualShortMethod) as usize - ptr as usize }, 608usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualShortMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualShortMethodV) as usize - ptr as usize }, 616usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualShortMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualShortMethodA) as usize - ptr as usize }, 624usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualShortMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualIntMethod) as usize - ptr as usize }, 632usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualIntMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualIntMethodV) as usize - ptr as usize }, 640usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualIntMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualIntMethodA) as usize - ptr as usize }, 648usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualIntMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualLongMethod) as usize - ptr as usize }, 656usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualLongMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualLongMethodV) as usize - ptr as usize }, 664usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualLongMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualLongMethodA) as usize - ptr as usize }, 672usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualLongMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualFloatMethod) as usize - ptr as usize }, 680usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualFloatMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualFloatMethodV) as usize - ptr as usize }, 688usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualFloatMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualFloatMethodA) as usize - ptr as usize }, 696usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualFloatMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualDoubleMethod) as usize - ptr as usize }, 704usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualDoubleMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualDoubleMethodV) as usize - ptr as usize }, 712usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualDoubleMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualDoubleMethodA) as usize - ptr as usize }, 720usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualDoubleMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualVoidMethod) as usize - ptr as usize }, 728usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualVoidMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualVoidMethodV) as usize - ptr as usize }, 736usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualVoidMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallNonvirtualVoidMethodA) as usize - ptr as usize }, 744usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallNonvirtualVoidMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetFieldID) as usize - ptr as usize }, 752usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetFieldID) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetObjectField) as usize - ptr as usize }, 760usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetObjectField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetBooleanField) as usize - ptr as usize }, 768usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetBooleanField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetByteField) as usize - ptr as usize }, 776usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetByteField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetCharField) as usize - ptr as usize }, 784usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetCharField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetShortField) as usize - ptr as usize }, 792usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetShortField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetIntField) as usize - ptr as usize }, 800usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetIntField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetLongField) as usize - ptr as usize }, 808usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetLongField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetFloatField) as usize - ptr as usize }, 816usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetFloatField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetDoubleField) as usize - ptr as usize }, 824usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetDoubleField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetObjectField) as usize - ptr as usize }, 832usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetObjectField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetBooleanField) as usize - ptr as usize }, 840usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetBooleanField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetByteField) as usize - ptr as usize }, 848usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetByteField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetCharField) as usize - ptr as usize }, 856usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetCharField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetShortField) as usize - ptr as usize }, 864usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetShortField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetIntField) as usize - ptr as usize }, 872usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetIntField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetLongField) as usize - ptr as usize }, 880usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetLongField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetFloatField) as usize - ptr as usize }, 888usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetFloatField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetDoubleField) as usize - ptr as usize }, 896usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetDoubleField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticMethodID) as usize - ptr as usize }, 904usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticMethodID) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticObjectMethod) as usize - ptr as usize }, 912usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticObjectMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticObjectMethodV) as usize - ptr as usize }, 920usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticObjectMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticObjectMethodA) as usize - ptr as usize }, 928usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticObjectMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticBooleanMethod) as usize - ptr as usize }, 936usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticBooleanMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticBooleanMethodV) as usize - ptr as usize }, 944usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticBooleanMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticBooleanMethodA) as usize - ptr as usize }, 952usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticBooleanMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticByteMethod) as usize - ptr as usize }, 960usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticByteMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticByteMethodV) as usize - ptr as usize }, 968usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticByteMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticByteMethodA) as usize - ptr as usize }, 976usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticByteMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticCharMethod) as usize - ptr as usize }, 984usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticCharMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticCharMethodV) as usize - ptr as usize }, 992usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticCharMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticCharMethodA) as usize - ptr as usize }, 1000usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticCharMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticShortMethod) as usize - ptr as usize }, 1008usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticShortMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticShortMethodV) as usize - ptr as usize }, 1016usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticShortMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticShortMethodA) as usize - ptr as usize }, 1024usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticShortMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticIntMethod) as usize - ptr as usize }, 1032usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticIntMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticIntMethodV) as usize - ptr as usize }, 1040usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticIntMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticIntMethodA) as usize - ptr as usize }, 1048usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticIntMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticLongMethod) as usize - ptr as usize }, 1056usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticLongMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticLongMethodV) as usize - ptr as usize }, 1064usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticLongMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticLongMethodA) as usize - ptr as usize }, 1072usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticLongMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticFloatMethod) as usize - ptr as usize }, 1080usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticFloatMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticFloatMethodV) as usize - ptr as usize }, 1088usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticFloatMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticFloatMethodA) as usize - ptr as usize }, 1096usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticFloatMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticDoubleMethod) as usize - ptr as usize }, 1104usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticDoubleMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticDoubleMethodV) as usize - ptr as usize }, 1112usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticDoubleMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticDoubleMethodA) as usize - ptr as usize }, 1120usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticDoubleMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticVoidMethod) as usize - ptr as usize }, 1128usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticVoidMethod) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticVoidMethodV) as usize - ptr as usize }, 1136usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticVoidMethodV) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).CallStaticVoidMethodA) as usize - ptr as usize }, 1144usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(CallStaticVoidMethodA) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticFieldID) as usize - ptr as usize }, 1152usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticFieldID) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticObjectField) as usize - ptr as usize }, 1160usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticObjectField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticBooleanField) as usize - ptr as usize }, 1168usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticBooleanField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticByteField) as usize - ptr as usize }, 1176usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticByteField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticCharField) as usize - ptr as usize }, 1184usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticCharField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticShortField) as usize - ptr as usize }, 1192usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticShortField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticIntField) as usize - ptr as usize }, 1200usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticIntField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticLongField) as usize - ptr as usize }, 1208usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticLongField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticFloatField) as usize - ptr as usize }, 1216usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticFloatField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStaticDoubleField) as usize - ptr as usize }, 1224usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStaticDoubleField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticObjectField) as usize - ptr as usize }, 1232usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticObjectField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticBooleanField) as usize - ptr as usize }, 1240usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticBooleanField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticByteField) as usize - ptr as usize }, 1248usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticByteField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticCharField) as usize - ptr as usize }, 1256usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticCharField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticShortField) as usize - ptr as usize }, 1264usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticShortField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticIntField) as usize - ptr as usize }, 1272usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticIntField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticLongField) as usize - ptr as usize }, 1280usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticLongField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticFloatField) as usize - ptr as usize }, 1288usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticFloatField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetStaticDoubleField) as usize - ptr as usize }, 1296usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetStaticDoubleField) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewString) as usize - ptr as usize }, 1304usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewString) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringLength) as usize - ptr as usize }, 1312usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringLength) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringChars) as usize - ptr as usize }, 1320usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringChars) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseStringChars) as usize - ptr as usize }, 1328usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseStringChars) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewStringUTF) as usize - ptr as usize }, 1336usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewStringUTF) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringUTFLength) as usize - ptr as usize }, 1344usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringUTFLength) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringUTFChars) as usize - ptr as usize }, 1352usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringUTFChars) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseStringUTFChars) as usize - ptr as usize }, 1360usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseStringUTFChars) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetArrayLength) as usize - ptr as usize }, 1368usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetArrayLength) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewObjectArray) as usize - ptr as usize }, 1376usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewObjectArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetObjectArrayElement) as usize - ptr as usize }, 1384usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetObjectArrayElement) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetObjectArrayElement) as usize - ptr as usize }, 1392usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetObjectArrayElement) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewBooleanArray) as usize - ptr as usize }, 1400usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewBooleanArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewByteArray) as usize - ptr as usize }, 1408usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewByteArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewCharArray) as usize - ptr as usize }, 1416usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewCharArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewShortArray) as usize - ptr as usize }, 1424usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewShortArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewIntArray) as usize - ptr as usize }, 1432usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewIntArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewLongArray) as usize - ptr as usize }, 1440usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewLongArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewFloatArray) as usize - ptr as usize }, 1448usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewFloatArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewDoubleArray) as usize - ptr as usize }, 1456usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewDoubleArray) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetBooleanArrayElements) as usize - ptr as usize }, 1464usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetBooleanArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetByteArrayElements) as usize - ptr as usize }, 1472usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetByteArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetCharArrayElements) as usize - ptr as usize }, 1480usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetCharArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetShortArrayElements) as usize - ptr as usize }, 1488usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetShortArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetIntArrayElements) as usize - ptr as usize }, 1496usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetIntArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetLongArrayElements) as usize - ptr as usize }, 1504usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetLongArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetFloatArrayElements) as usize - ptr as usize }, 1512usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetFloatArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetDoubleArrayElements) as usize - ptr as usize }, 1520usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetDoubleArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseBooleanArrayElements) as usize - ptr as usize }, 1528usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseBooleanArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseByteArrayElements) as usize - ptr as usize }, 1536usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseByteArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseCharArrayElements) as usize - ptr as usize }, 1544usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseCharArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseShortArrayElements) as usize - ptr as usize }, 1552usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseShortArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseIntArrayElements) as usize - ptr as usize }, 1560usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseIntArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseLongArrayElements) as usize - ptr as usize }, 1568usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseLongArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseFloatArrayElements) as usize - ptr as usize }, 1576usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseFloatArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseDoubleArrayElements) as usize - ptr as usize }, 1584usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseDoubleArrayElements) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetBooleanArrayRegion) as usize - ptr as usize }, 1592usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetBooleanArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetByteArrayRegion) as usize - ptr as usize }, 1600usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetByteArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetCharArrayRegion) as usize - ptr as usize }, 1608usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetCharArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetShortArrayRegion) as usize - ptr as usize }, 1616usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetShortArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetIntArrayRegion) as usize - ptr as usize }, 1624usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetIntArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetLongArrayRegion) as usize - ptr as usize }, 1632usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetLongArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetFloatArrayRegion) as usize - ptr as usize }, 1640usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetFloatArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetDoubleArrayRegion) as usize - ptr as usize }, 1648usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetDoubleArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetBooleanArrayRegion) as usize - ptr as usize }, 1656usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetBooleanArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetByteArrayRegion) as usize - ptr as usize }, 1664usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetByteArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetCharArrayRegion) as usize - ptr as usize }, 1672usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetCharArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetShortArrayRegion) as usize - ptr as usize }, 1680usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetShortArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetIntArrayRegion) as usize - ptr as usize }, 1688usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetIntArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetLongArrayRegion) as usize - ptr as usize }, 1696usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetLongArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetFloatArrayRegion) as usize - ptr as usize }, 1704usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetFloatArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).SetDoubleArrayRegion) as usize - ptr as usize }, 1712usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(SetDoubleArrayRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).RegisterNatives) as usize - ptr as usize }, 1720usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(RegisterNatives) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).UnregisterNatives) as usize - ptr as usize }, 1728usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(UnregisterNatives) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).MonitorEnter) as usize - ptr as usize }, 1736usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(MonitorEnter) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).MonitorExit) as usize - ptr as usize }, 1744usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(MonitorExit) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetJavaVM) as usize - ptr as usize }, 1752usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetJavaVM) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringRegion) as usize - ptr as usize }, 1760usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringUTFRegion) as usize - ptr as usize }, 1768usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringUTFRegion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetPrimitiveArrayCritical) as usize - ptr as usize }, 1776usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetPrimitiveArrayCritical) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleasePrimitiveArrayCritical) as usize - ptr as usize }, 1784usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleasePrimitiveArrayCritical) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetStringCritical) as usize - ptr as usize }, 1792usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetStringCritical) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ReleaseStringCritical) as usize - ptr as usize }, 1800usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ReleaseStringCritical) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewWeakGlobalRef) as usize - ptr as usize }, 1808usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewWeakGlobalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DeleteWeakGlobalRef) as usize - ptr as usize }, 1816usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(DeleteWeakGlobalRef) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).ExceptionCheck) as usize - ptr as usize }, 1824usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(ExceptionCheck) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).NewDirectByteBuffer) as usize - ptr as usize }, 1832usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(NewDirectByteBuffer) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetDirectBufferAddress) as usize - ptr as usize }, 1840usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetDirectBufferAddress) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetDirectBufferCapacity) as usize - ptr as usize }, 1848usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetDirectBufferCapacity) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetObjectRefType) as usize - ptr as usize }, 1856usize, concat!( "Offset of field: ", stringify!(JNINativeInterface), "::", stringify!(GetObjectRefType) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _JNIEnv { pub functions: *const root::JNINativeInterface, } #[test] fn bindgen_test_layout__JNIEnv() { const UNINIT: ::std::mem::MaybeUninit<_JNIEnv> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_JNIEnv>(), 8usize, concat!("Size of: ", stringify!(_JNIEnv)) ); assert_eq!( ::std::mem::align_of::<_JNIEnv>(), 8usize, concat!("Alignment of ", stringify!(_JNIEnv)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).functions) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_JNIEnv), "::", stringify!(functions) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct JNIInvokeInterface { pub reserved0: *mut ::std::os::raw::c_void, pub reserved1: *mut ::std::os::raw::c_void, pub reserved2: *mut ::std::os::raw::c_void, pub DestroyJavaVM: ::std::option::Option root::jint>, pub AttachCurrentThread: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JavaVM, arg2: *mut *mut root::JNIEnv, arg3: *mut ::std::os::raw::c_void, ) -> root::jint, >, pub DetachCurrentThread: ::std::option::Option root::jint>, pub GetEnv: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JavaVM, arg2: *mut *mut ::std::os::raw::c_void, arg3: root::jint, ) -> root::jint, >, pub AttachCurrentThreadAsDaemon: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JavaVM, arg2: *mut *mut root::JNIEnv, arg3: *mut ::std::os::raw::c_void, ) -> root::jint, >, } #[test] fn bindgen_test_layout_JNIInvokeInterface() { const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::(), 64usize, concat!("Size of: ", stringify!(JNIInvokeInterface)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(JNIInvokeInterface)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved0) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(reserved0) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved1) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(reserved1) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).reserved2) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(reserved2) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DestroyJavaVM) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(DestroyJavaVM) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).AttachCurrentThread) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(AttachCurrentThread) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).DetachCurrentThread) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(DetachCurrentThread) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).GetEnv) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(GetEnv) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).AttachCurrentThreadAsDaemon) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(JNIInvokeInterface), "::", stringify!(AttachCurrentThreadAsDaemon) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _JavaVM { pub functions: *const root::JNIInvokeInterface, } #[test] fn bindgen_test_layout__JavaVM() { const UNINIT: ::std::mem::MaybeUninit<_JavaVM> = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_JavaVM>(), 8usize, concat!("Size of: ", stringify!(_JavaVM)) ); assert_eq!( ::std::mem::align_of::<_JavaVM>(), 8usize, concat!("Alignment of ", stringify!(_JavaVM)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).functions) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(_JavaVM), "::", stringify!(functions) ) ); } pub type __kernel_ulong_t = ::std::os::raw::c_ulong; pub type __kernel_ino_t = root::__kernel_ulong_t; pub type __ino_t = root::__kernel_ino_t; pub type ino_t = root::__ino_t; pub type dev_t = u64; pub mod zygisk { #[allow(unused_imports)] use self::super::super::root; #[repr(C)] pub struct ModuleBase__bindgen_vtable(::std::os::raw::c_void); #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct ModuleBase { pub vtable_: *const ModuleBase__bindgen_vtable, } #[test] fn bindgen_test_layout_ModuleBase() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(ModuleBase)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(ModuleBase)) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct AppSpecializeArgs { pub uid: *mut root::jint, pub gid: *mut root::jint, pub gids: *mut root::jintArray, pub runtime_flags: *mut root::jint, pub rlimits: *mut root::jobjectArray, pub mount_external: *mut root::jint, pub se_info: *mut root::jstring, pub nice_name: *mut root::jstring, pub instruction_set: *mut root::jstring, pub app_data_dir: *mut root::jstring, pub fds_to_ignore: *mut root::jintArray, pub is_child_zygote: *mut root::jboolean, pub is_top_app: *mut root::jboolean, pub pkg_data_info_list: *mut root::jobjectArray, pub whitelisted_data_info_list: *mut root::jobjectArray, pub mount_data_dirs: *mut root::jboolean, pub mount_storage_dirs: *mut root::jboolean, } #[test] fn bindgen_test_layout_AppSpecializeArgs() { const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::(), 136usize, concat!("Size of: ", stringify!(AppSpecializeArgs)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(AppSpecializeArgs)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).uid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(uid) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).gid) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(gid) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).gids) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(gids) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).runtime_flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(runtime_flags) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).rlimits) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(rlimits) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).mount_external) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(mount_external) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).se_info) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(se_info) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).nice_name) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(nice_name) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).instruction_set) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(instruction_set) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).app_data_dir) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(app_data_dir) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).fds_to_ignore) as usize - ptr as usize }, 80usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(fds_to_ignore) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).is_child_zygote) as usize - ptr as usize }, 88usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(is_child_zygote) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).is_top_app) as usize - ptr as usize }, 96usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(is_top_app) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).pkg_data_info_list) as usize - ptr as usize }, 104usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(pkg_data_info_list) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).whitelisted_data_info_list) as usize - ptr as usize }, 112usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(whitelisted_data_info_list) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).mount_data_dirs) as usize - ptr as usize }, 120usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(mount_data_dirs) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).mount_storage_dirs) as usize - ptr as usize }, 128usize, concat!( "Offset of field: ", stringify!(AppSpecializeArgs), "::", stringify!(mount_storage_dirs) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct ServerSpecializeArgs { pub uid: *mut root::jint, pub gid: *mut root::jint, pub gids: *mut root::jintArray, pub runtime_flags: *mut root::jint, pub permitted_capabilities: *mut root::jlong, pub effective_capabilities: *mut root::jlong, } #[test] fn bindgen_test_layout_ServerSpecializeArgs() { 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!(ServerSpecializeArgs)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(ServerSpecializeArgs)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).uid) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(uid) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).gid) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(gid) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).gids) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(gids) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).runtime_flags) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(runtime_flags) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).permitted_capabilities) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(permitted_capabilities) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).effective_capabilities) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(ServerSpecializeArgs), "::", stringify!(effective_capabilities) ) ); } pub mod internal { #[allow(unused_imports)] use self::super::super::super::root; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct module_abi { pub api_version: ::std::os::raw::c_long, pub impl_: *mut root::zygisk::ModuleBase, pub preAppSpecialize: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::zygisk::ModuleBase, arg2: *mut root::zygisk::AppSpecializeArgs, ), >, pub postAppSpecialize: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::zygisk::ModuleBase, arg2: *const root::zygisk::AppSpecializeArgs, ), >, pub preServerSpecialize: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::zygisk::ModuleBase, arg2: *mut root::zygisk::ServerSpecializeArgs, ), >, pub postServerSpecialize: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::zygisk::ModuleBase, arg2: *const root::zygisk::ServerSpecializeArgs, ), >, } #[test] fn bindgen_test_layout_module_abi() { 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!(module_abi)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(module_abi)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).api_version) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(api_version) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).impl_) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(impl_) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).preAppSpecialize) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(preAppSpecialize) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).postAppSpecialize) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(postAppSpecialize) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).preServerSpecialize) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(preServerSpecialize) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).postServerSpecialize) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(module_abi), "::", stringify!(postServerSpecialize) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct api_table { pub impl_: *mut ::std::os::raw::c_void, pub registerModule: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::zygisk::internal::api_table, arg2: *mut root::zygisk::internal::module_abi, ) -> bool, >, pub hookJniNativeMethods: ::std::option::Option< unsafe extern "C" fn( arg1: *mut root::JNIEnv, arg2: *const ::std::os::raw::c_char, arg3: *mut root::JNINativeMethod, arg4: ::std::os::raw::c_int, ), >, pub pltHookRegister: ::std::option::Option< unsafe extern "C" fn( arg1: root::dev_t, arg2: root::ino_t, arg3: *const ::std::os::raw::c_char, arg4: *mut ::std::os::raw::c_void, arg5: *mut *mut ::std::os::raw::c_void, ), >, pub exemptFd: ::std::option::Option< unsafe extern "C" fn(arg1: ::std::os::raw::c_int) -> bool, >, pub pltHookCommit: ::std::option::Option bool>, pub connectCompanion: ::std::option::Option< unsafe extern "C" fn( arg1: *mut ::std::os::raw::c_void, ) -> ::std::os::raw::c_int, >, pub setOption: ::std::option::Option< unsafe extern "C" fn( arg1: *mut ::std::os::raw::c_void, arg2: root::zygisk::Option, ), >, pub getModuleDir: ::std::option::Option< unsafe extern "C" fn( arg1: *mut ::std::os::raw::c_void, ) -> ::std::os::raw::c_int, >, pub getFlags: ::std::option::Option< unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> u32, >, } #[test] fn bindgen_test_layout_api_table() { const UNINIT: ::std::mem::MaybeUninit = ::std::mem::MaybeUninit::uninit(); let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::(), 80usize, concat!("Size of: ", stringify!(api_table)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(api_table)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).impl_) as usize - ptr as usize }, 0usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(impl_) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).registerModule) as usize - ptr as usize }, 8usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(registerModule) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).hookJniNativeMethods) as usize - ptr as usize }, 16usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(hookJniNativeMethods) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).pltHookRegister) as usize - ptr as usize }, 24usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(pltHookRegister) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).exemptFd) as usize - ptr as usize }, 32usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(exemptFd) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).pltHookCommit) as usize - ptr as usize }, 40usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(pltHookCommit) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).connectCompanion) as usize - ptr as usize }, 48usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(connectCompanion) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).setOption) as usize - ptr as usize }, 56usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(setOption) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).getModuleDir) as usize - ptr as usize }, 64usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(getModuleDir) ) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).getFlags) as usize - ptr as usize }, 72usize, concat!( "Offset of field: ", stringify!(api_table), "::", stringify!(getFlags) ) ); } } pub const Option_FORCE_DENYLIST_UNMOUNT: root::zygisk::Option = 0; pub const Option_DLCLOSE_MODULE_LIBRARY: root::zygisk::Option = 1; pub type Option = ::std::os::raw::c_int; pub const StateFlag_PROCESS_GRANTED_ROOT: root::zygisk::StateFlag = 1; pub const StateFlag_PROCESS_ON_DENYLIST: root::zygisk::StateFlag = 2; pub type StateFlag = u32; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Api { pub tbl: *mut root::zygisk::internal::api_table, } #[test] fn bindgen_test_layout_Api() { 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!(Api)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(Api)) ); assert_eq!( unsafe { ::std::ptr::addr_of!((*ptr).tbl) as usize - ptr as usize }, 0usize, concat!("Offset of field: ", stringify!(Api), "::", stringify!(tbl)) ); } } extern "C" { pub fn zygisk_module_entry( arg1: *mut root::zygisk::internal::api_table, arg2: *mut root::JNIEnv, ); } extern "C" { pub fn zygisk_companion_entry(arg1: ::std::os::raw::c_int); } }