From 9e305b529b512cae4c467cef8cbd57964fb401c4 Mon Sep 17 00:00:00 2001 From: Jonathan Pryor Date: Wed, 28 Jun 2023 18:12:05 -0400 Subject: [PATCH] [Mono.Android] Use C#9 Function Pointer backend for JNI Context: https://github.com/xamarin/Java.Interop/commit/312fbf439ed874bb5f4f25ee6d2c9a2b3c2f5a8b As per xamarin/java.interop@312fbf43: > With a Release build, the Average Invocation time for > JIFunctionPointersTiming takes 97% of the time as JIPinvokeTiming, > i.e. is 3% faster. Let's see if that's true *on Android*: use the C#9 Function Pointer backend within `Java.Interop.dll`. --- src/Mono.Android/Mono.Android.csproj | 2 +- src/monodroid/CMakeLists.txt | 2 - src/monodroid/jni/generate-pinvoke-tables.cc | 188 --- src/monodroid/jni/java_interop_api.c | 1452 ----------------- src/monodroid/jni/java_interop_api.h | 230 --- src/monodroid/jni/pinvoke-override-api.cc | 4 - src/monodroid/jni/pinvoke-tables.include | 378 +---- .../JavaInterop_Tests_Reference.cs | 2 + 8 files changed, 4 insertions(+), 2254 deletions(-) delete mode 100644 src/monodroid/jni/java_interop_api.c delete mode 100644 src/monodroid/jni/java_interop_api.h diff --git a/src/Mono.Android/Mono.Android.csproj b/src/Mono.Android/Mono.Android.csproj index e21eeca86d4..33a0696f03f 100644 --- a/src/Mono.Android/Mono.Android.csproj +++ b/src/Mono.Android/Mono.Android.csproj @@ -48,7 +48,7 @@ - + ILLink.LinkAttributes.xml diff --git a/src/monodroid/CMakeLists.txt b/src/monodroid/CMakeLists.txt index 3c4b7a69411..d016c758df2 100644 --- a/src/monodroid/CMakeLists.txt +++ b/src/monodroid/CMakeLists.txt @@ -544,7 +544,6 @@ if(ANDROID AND ENABLE_NET) list(APPEND XAMARIN_MONODROID_SOURCES ${SOURCES_DIR}/monovm-properties.cc ${SOURCES_DIR}/pinvoke-override-api.cc - ${SOURCES_DIR}/java_interop_api.c ${JAVA_INTEROP_SRC_PATH}/java-interop-util.cc ) else() @@ -553,7 +552,6 @@ else() ) set(XAMARIN_INTERNAL_API_SOURCES - ${SOURCES_DIR}/java_interop_api.c ${SOURCES_DIR}/internal-pinvoke-api.cc ${JAVA_INTEROP_SRC_PATH}/java-interop-util.cc ) diff --git a/src/monodroid/jni/generate-pinvoke-tables.cc b/src/monodroid/jni/generate-pinvoke-tables.cc index 85ab21c1d8f..17a051c3b4f 100644 --- a/src/monodroid/jni/generate-pinvoke-tables.cc +++ b/src/monodroid/jni/generate-pinvoke-tables.cc @@ -34,194 +34,6 @@ using namespace xamarin::android; const std::vector internal_pinvoke_names = { "create_public_directory", "java_interop_free", - "java_interop_jnienv_alloc_object", - "java_interop_jnienv_call_boolean_method", - "java_interop_jnienv_call_boolean_method_a", - "java_interop_jnienv_call_byte_method", - "java_interop_jnienv_call_byte_method_a", - "java_interop_jnienv_call_char_method", - "java_interop_jnienv_call_char_method_a", - "java_interop_jnienv_call_double_method", - "java_interop_jnienv_call_double_method_a", - "java_interop_jnienv_call_float_method", - "java_interop_jnienv_call_float_method_a", - "java_interop_jnienv_call_int_method", - "java_interop_jnienv_call_int_method_a", - "java_interop_jnienv_call_long_method", - "java_interop_jnienv_call_long_method_a", - "java_interop_jnienv_call_nonvirtual_boolean_method", - "java_interop_jnienv_call_nonvirtual_boolean_method_a", - "java_interop_jnienv_call_nonvirtual_byte_method", - "java_interop_jnienv_call_nonvirtual_byte_method_a", - "java_interop_jnienv_call_nonvirtual_char_method", - "java_interop_jnienv_call_nonvirtual_char_method_a", - "java_interop_jnienv_call_nonvirtual_double_method", - "java_interop_jnienv_call_nonvirtual_double_method_a", - "java_interop_jnienv_call_nonvirtual_float_method", - "java_interop_jnienv_call_nonvirtual_float_method_a", - "java_interop_jnienv_call_nonvirtual_int_method", - "java_interop_jnienv_call_nonvirtual_int_method_a", - "java_interop_jnienv_call_nonvirtual_long_method", - "java_interop_jnienv_call_nonvirtual_long_method_a", - "java_interop_jnienv_call_nonvirtual_object_method", - "java_interop_jnienv_call_nonvirtual_object_method_a", - "java_interop_jnienv_call_nonvirtual_short_method", - "java_interop_jnienv_call_nonvirtual_short_method_a", - "java_interop_jnienv_call_nonvirtual_void_method", - "java_interop_jnienv_call_nonvirtual_void_method_a", - "java_interop_jnienv_call_object_method", - "java_interop_jnienv_call_object_method_a", - "java_interop_jnienv_call_short_method", - "java_interop_jnienv_call_short_method_a", - "java_interop_jnienv_call_static_boolean_method", - "java_interop_jnienv_call_static_boolean_method_a", - "java_interop_jnienv_call_static_byte_method", - "java_interop_jnienv_call_static_byte_method_a", - "java_interop_jnienv_call_static_char_method", - "java_interop_jnienv_call_static_char_method_a", - "java_interop_jnienv_call_static_double_method", - "java_interop_jnienv_call_static_double_method_a", - "java_interop_jnienv_call_static_float_method", - "java_interop_jnienv_call_static_float_method_a", - "java_interop_jnienv_call_static_int_method", - "java_interop_jnienv_call_static_int_method_a", - "java_interop_jnienv_call_static_long_method", - "java_interop_jnienv_call_static_long_method_a", - "java_interop_jnienv_call_static_object_method", - "java_interop_jnienv_call_static_object_method_a", - "java_interop_jnienv_call_static_short_method", - "java_interop_jnienv_call_static_short_method_a", - "java_interop_jnienv_call_static_void_method", - "java_interop_jnienv_call_static_void_method_a", - "java_interop_jnienv_call_void_method", - "java_interop_jnienv_call_void_method_a", - "java_interop_jnienv_define_class", - "java_interop_jnienv_delete_global_ref", - "java_interop_jnienv_delete_local_ref", - "java_interop_jnienv_delete_weak_global_ref", - "java_interop_jnienv_ensure_local_capacity", - "java_interop_jnienv_exception_check", - "java_interop_jnienv_exception_clear", - "java_interop_jnienv_exception_describe", - "java_interop_jnienv_exception_occurred", - "java_interop_jnienv_fatal_error", - "java_interop_jnienv_find_class", - "java_interop_jnienv_get_array_length", - "java_interop_jnienv_get_boolean_array_elements", - "java_interop_jnienv_get_boolean_array_region", - "java_interop_jnienv_get_boolean_field", - "java_interop_jnienv_get_byte_array_elements", - "java_interop_jnienv_get_byte_array_region", - "java_interop_jnienv_get_byte_field", - "java_interop_jnienv_get_char_array_elements", - "java_interop_jnienv_get_char_array_region", - "java_interop_jnienv_get_char_field", - "java_interop_jnienv_get_direct_buffer_address", - "java_interop_jnienv_get_direct_buffer_capacity", - "java_interop_jnienv_get_double_array_elements", - "java_interop_jnienv_get_double_array_region", - "java_interop_jnienv_get_double_field", - "java_interop_jnienv_get_field_id", - "java_interop_jnienv_get_float_array_elements", - "java_interop_jnienv_get_float_array_region", - "java_interop_jnienv_get_float_field", - "java_interop_jnienv_get_int_array_elements", - "java_interop_jnienv_get_int_array_region", - "java_interop_jnienv_get_int_field", - "java_interop_jnienv_get_java_vm", - "java_interop_jnienv_get_long_array_elements", - "java_interop_jnienv_get_long_array_region", - "java_interop_jnienv_get_long_field", - "java_interop_jnienv_get_method_id", - "java_interop_jnienv_get_object_array_element", - "java_interop_jnienv_get_object_class", - "java_interop_jnienv_get_object_field", - "java_interop_jnienv_get_object_ref_type", - "java_interop_jnienv_get_primitive_array_critical", - "java_interop_jnienv_get_short_array_elements", - "java_interop_jnienv_get_short_array_region", - "java_interop_jnienv_get_short_field", - "java_interop_jnienv_get_static_boolean_field", - "java_interop_jnienv_get_static_byte_field", - "java_interop_jnienv_get_static_char_field", - "java_interop_jnienv_get_static_double_field", - "java_interop_jnienv_get_static_field_id", - "java_interop_jnienv_get_static_float_field", - "java_interop_jnienv_get_static_int_field", - "java_interop_jnienv_get_static_long_field", - "java_interop_jnienv_get_static_method_id", - "java_interop_jnienv_get_static_object_field", - "java_interop_jnienv_get_static_short_field", - "java_interop_jnienv_get_string_chars", - "java_interop_jnienv_get_string_length", - "java_interop_jnienv_get_superclass", - "java_interop_jnienv_get_version", - "java_interop_jnienv_is_assignable_from", - "java_interop_jnienv_is_instance_of", - "java_interop_jnienv_is_same_object", - "java_interop_jnienv_monitor_enter", - "java_interop_jnienv_monitor_exit", - "java_interop_jnienv_new_boolean_array", - "java_interop_jnienv_new_byte_array", - "java_interop_jnienv_new_char_array", - "java_interop_jnienv_new_direct_byte_buffer", - "java_interop_jnienv_new_double_array", - "java_interop_jnienv_new_float_array", - "java_interop_jnienv_new_global_ref", - "java_interop_jnienv_new_int_array", - "java_interop_jnienv_new_local_ref", - "java_interop_jnienv_new_long_array", - "java_interop_jnienv_new_object", - "java_interop_jnienv_new_object_a", - "java_interop_jnienv_new_object_array", - "java_interop_jnienv_new_short_array", - "java_interop_jnienv_new_string", - "java_interop_jnienv_new_weak_global_ref", - "java_interop_jnienv_pop_local_frame", - "java_interop_jnienv_push_local_frame", - "java_interop_jnienv_register_natives", - "java_interop_jnienv_release_boolean_array_elements", - "java_interop_jnienv_release_byte_array_elements", - "java_interop_jnienv_release_char_array_elements", - "java_interop_jnienv_release_double_array_elements", - "java_interop_jnienv_release_float_array_elements", - "java_interop_jnienv_release_int_array_elements", - "java_interop_jnienv_release_long_array_elements", - "java_interop_jnienv_release_primitive_array_critical", - "java_interop_jnienv_release_short_array_elements", - "java_interop_jnienv_release_string_chars", - "java_interop_jnienv_set_boolean_array_region", - "java_interop_jnienv_set_boolean_field", - "java_interop_jnienv_set_byte_array_region", - "java_interop_jnienv_set_byte_field", - "java_interop_jnienv_set_char_array_region", - "java_interop_jnienv_set_char_field", - "java_interop_jnienv_set_double_array_region", - "java_interop_jnienv_set_double_field", - "java_interop_jnienv_set_float_array_region", - "java_interop_jnienv_set_float_field", - "java_interop_jnienv_set_int_array_region", - "java_interop_jnienv_set_int_field", - "java_interop_jnienv_set_long_array_region", - "java_interop_jnienv_set_long_field", - "java_interop_jnienv_set_object_array_element", - "java_interop_jnienv_set_object_field", - "java_interop_jnienv_set_short_array_region", - "java_interop_jnienv_set_short_field", - "java_interop_jnienv_set_static_boolean_field", - "java_interop_jnienv_set_static_byte_field", - "java_interop_jnienv_set_static_char_field", - "java_interop_jnienv_set_static_double_field", - "java_interop_jnienv_set_static_float_field", - "java_interop_jnienv_set_static_int_field", - "java_interop_jnienv_set_static_long_field", - "java_interop_jnienv_set_static_object_field", - "java_interop_jnienv_set_static_short_field", - "java_interop_jnienv_throw", - "java_interop_jnienv_throw_new", - "java_interop_jnienv_to_reflected_field", - "java_interop_jnienv_to_reflected_method", - "java_interop_jnienv_unregister_natives", "java_interop_strdup", "monodroid_clear_gdb_wait", "_monodroid_counters_dump", diff --git a/src/monodroid/jni/java_interop_api.c b/src/monodroid/jni/java_interop_api.c deleted file mode 100644 index c4602190919..00000000000 --- a/src/monodroid/jni/java_interop_api.c +++ /dev/null @@ -1,1452 +0,0 @@ -/* - * Generated file; DO NOT EDIT! - * - * To make changes, edit Java.Interop/build-tools/jnienv-gen and rerun - */ - -#include "java_interop_api.h" - -JI_API jint -java_interop_jnienv_get_version (JNIEnv *env) -{ - jint _r_ = (*env)->GetVersion (env); - return _r_; -} - -JI_API jclass -java_interop_jnienv_define_class (JNIEnv *env, jthrowable *_thrown, const char* name, jobject loader, const jbyte* buffer, jsize bufferLength) -{ - *_thrown = 0; - jclass _r_ = (*env)->DefineClass (env, name, loader, buffer, bufferLength); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jclass -java_interop_jnienv_find_class (JNIEnv *env, jthrowable *_thrown, const char* classname) -{ - *_thrown = 0; - jclass _r_ = (*env)->FindClass (env, classname); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_to_reflected_method (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method, jboolean isStatic) -{ - *_thrown = 0; - jobject _r_ = (*env)->ToReflectedMethod (env, type, method, isStatic); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jclass -java_interop_jnienv_get_superclass (JNIEnv *env, jclass type) -{ - jclass _r_ = (*env)->GetSuperclass (env, type); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_is_assignable_from (JNIEnv *env, jclass class1, jclass class2) -{ - jboolean _r_ = (*env)->IsAssignableFrom (env, class1, class2); - return _r_; -} - -JI_API jobject -java_interop_jnienv_to_reflected_field (JNIEnv *env, jthrowable *_thrown, jclass type, jfieldID field, jboolean isStatic) -{ - *_thrown = 0; - jobject _r_ = (*env)->ToReflectedField (env, type, field, isStatic); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_throw (JNIEnv *env, jthrowable toThrow) -{ - jint _r_ = (*env)->Throw (env, toThrow); - return _r_; -} - -JI_API jint -java_interop_jnienv_throw_new (JNIEnv *env, jclass type, const char* message) -{ - jint _r_ = (*env)->ThrowNew (env, type, message); - return _r_; -} - -JI_API jthrowable -java_interop_jnienv_exception_occurred (JNIEnv *env) -{ - jthrowable _r_ = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void -java_interop_jnienv_exception_describe (JNIEnv *env) -{ - (*env)->ExceptionDescribe (env); -} - -JI_API void -java_interop_jnienv_exception_clear (JNIEnv *env) -{ - (*env)->ExceptionClear (env); -} - -JI_API void -java_interop_jnienv_fatal_error (JNIEnv *env, const char* message) -{ - (*env)->FatalError (env, message); -} - -JI_API jint -java_interop_jnienv_push_local_frame (JNIEnv *env, jint capacity) -{ - jint _r_ = (*env)->PushLocalFrame (env, capacity); - return _r_; -} - -JI_API jobject -java_interop_jnienv_pop_local_frame (JNIEnv *env, jobject result) -{ - jobject _r_ = (*env)->PopLocalFrame (env, result); - return _r_; -} - -JI_API jglobal -java_interop_jnienv_new_global_ref (JNIEnv *env, jobject instance) -{ - jglobal _r_ = (*env)->NewGlobalRef (env, instance); - return _r_; -} - -JI_API void -java_interop_jnienv_delete_global_ref (JNIEnv *env, jobject instance) -{ - (*env)->DeleteGlobalRef (env, instance); -} - -JI_API void -java_interop_jnienv_delete_local_ref (JNIEnv *env, jobject instance) -{ - (*env)->DeleteLocalRef (env, instance); -} - -JI_API jboolean -java_interop_jnienv_is_same_object (JNIEnv *env, jobject object1, jobject object2) -{ - jboolean _r_ = (*env)->IsSameObject (env, object1, object2); - return _r_; -} - -JI_API jobject -java_interop_jnienv_new_local_ref (JNIEnv *env, jobject instance) -{ - jobject _r_ = (*env)->NewLocalRef (env, instance); - return _r_; -} - -JI_API jint -java_interop_jnienv_ensure_local_capacity (JNIEnv *env, jint capacity) -{ - jint _r_ = (*env)->EnsureLocalCapacity (env, capacity); - return _r_; -} - -JI_API jobject -java_interop_jnienv_alloc_object (JNIEnv *env, jthrowable *_thrown, jclass type) -{ - *_thrown = 0; - jobject _r_ = (*env)->AllocObject (env, type); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_new_object (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method) -{ - *_thrown = 0; - jobject _r_ = (*env)->NewObject (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_new_object_a (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jobject _r_ = (*env)->NewObjectA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jclass -java_interop_jnienv_get_object_class (JNIEnv *env, jobject instance) -{ - jclass _r_ = (*env)->GetObjectClass (env, instance); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_is_instance_of (JNIEnv *env, jobject instance, jclass type) -{ - jboolean _r_ = (*env)->IsInstanceOf (env, instance, type); - return _r_; -} - -JI_API jmethodID -java_interop_jnienv_get_method_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature) -{ - *_thrown = 0; - jmethodID _r_ = (*env)->GetMethodID (env, type, name, signature); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_call_object_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallObjectMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_call_object_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallObjectMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_boolean_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallBooleanMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallBooleanMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_byte_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallByteMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_byte_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallByteMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_char_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallCharMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_char_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallCharMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_short_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallShortMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_short_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallShortMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_int_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jint _r_ = (*env)->CallIntMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_int_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jint _r_ = (*env)->CallIntMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_long_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallLongMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_long_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallLongMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_float_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallFloatMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_float_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallFloatMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_double_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallDoubleMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_double_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallDoubleMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void -java_interop_jnienv_call_void_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method) -{ - *_thrown = 0; - (*env)->CallVoidMethod (env, instance, method); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_call_void_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args) -{ - *_thrown = 0; - (*env)->CallVoidMethodA (env, instance, method, args); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API jobject -java_interop_jnienv_call_nonvirtual_object_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallNonvirtualObjectMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_call_nonvirtual_object_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallNonvirtualObjectMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_nonvirtual_boolean_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallNonvirtualBooleanMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_nonvirtual_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallNonvirtualBooleanMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_nonvirtual_byte_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallNonvirtualByteMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_nonvirtual_byte_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallNonvirtualByteMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_nonvirtual_char_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallNonvirtualCharMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_nonvirtual_char_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallNonvirtualCharMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_nonvirtual_short_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallNonvirtualShortMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_nonvirtual_short_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallNonvirtualShortMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_nonvirtual_int_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jint _r_ = (*env)->CallNonvirtualIntMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_nonvirtual_int_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jint _r_ = (*env)->CallNonvirtualIntMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_nonvirtual_long_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallNonvirtualLongMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_nonvirtual_long_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallNonvirtualLongMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_nonvirtual_float_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallNonvirtualFloatMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_nonvirtual_float_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallNonvirtualFloatMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_nonvirtual_double_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallNonvirtualDoubleMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_nonvirtual_double_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallNonvirtualDoubleMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void -java_interop_jnienv_call_nonvirtual_void_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method) -{ - *_thrown = 0; - (*env)->CallNonvirtualVoidMethod (env, instance, type, method); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_call_nonvirtual_void_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args) -{ - *_thrown = 0; - (*env)->CallNonvirtualVoidMethodA (env, instance, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API jfieldID -java_interop_jnienv_get_field_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature) -{ - *_thrown = 0; - jfieldID _r_ = (*env)->GetFieldID (env, type, name, signature); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_get_object_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jobject _r_ = (*env)->GetObjectField (env, instance, field); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_get_boolean_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jboolean _r_ = (*env)->GetBooleanField (env, instance, field); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_get_byte_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jbyte _r_ = (*env)->GetByteField (env, instance, field); - return _r_; -} - -JI_API jchar -java_interop_jnienv_get_char_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jchar _r_ = (*env)->GetCharField (env, instance, field); - return _r_; -} - -JI_API jshort -java_interop_jnienv_get_short_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jshort _r_ = (*env)->GetShortField (env, instance, field); - return _r_; -} - -JI_API jint -java_interop_jnienv_get_int_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jint _r_ = (*env)->GetIntField (env, instance, field); - return _r_; -} - -JI_API jlong -java_interop_jnienv_get_long_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jlong _r_ = (*env)->GetLongField (env, instance, field); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_get_float_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jfloat _r_ = (*env)->GetFloatField (env, instance, field); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_get_double_field (JNIEnv *env, jobject instance, jfieldID field) -{ - jdouble _r_ = (*env)->GetDoubleField (env, instance, field); - return _r_; -} - -JI_API void -java_interop_jnienv_set_object_field (JNIEnv *env, jobject instance, jfieldID field, jobject value) -{ - (*env)->SetObjectField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_boolean_field (JNIEnv *env, jobject instance, jfieldID field, jboolean value) -{ - (*env)->SetBooleanField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_byte_field (JNIEnv *env, jobject instance, jfieldID field, jbyte value) -{ - (*env)->SetByteField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_char_field (JNIEnv *env, jobject instance, jfieldID field, jchar value) -{ - (*env)->SetCharField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_short_field (JNIEnv *env, jobject instance, jfieldID field, jshort value) -{ - (*env)->SetShortField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_int_field (JNIEnv *env, jobject instance, jfieldID field, jint value) -{ - (*env)->SetIntField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_long_field (JNIEnv *env, jobject instance, jfieldID field, jlong value) -{ - (*env)->SetLongField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_float_field (JNIEnv *env, jobject instance, jfieldID field, jfloat value) -{ - (*env)->SetFloatField (env, instance, field, value); -} - -JI_API void -java_interop_jnienv_set_double_field (JNIEnv *env, jobject instance, jfieldID field, jdouble value) -{ - (*env)->SetDoubleField (env, instance, field, value); -} - -JI_API jstaticmethodID -java_interop_jnienv_get_static_method_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature) -{ - *_thrown = 0; - jstaticmethodID _r_ = (*env)->GetStaticMethodID (env, type, name, signature); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_call_static_object_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallStaticObjectMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_call_static_object_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jobject _r_ = (*env)->CallStaticObjectMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_static_boolean_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallStaticBooleanMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_call_static_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jboolean _r_ = (*env)->CallStaticBooleanMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_static_byte_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallStaticByteMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_call_static_byte_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jbyte _r_ = (*env)->CallStaticByteMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_static_char_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallStaticCharMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jchar -java_interop_jnienv_call_static_char_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jchar _r_ = (*env)->CallStaticCharMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_static_short_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallStaticShortMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jshort -java_interop_jnienv_call_static_short_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jshort _r_ = (*env)->CallStaticShortMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_static_int_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jint _r_ = (*env)->CallStaticIntMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_call_static_int_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jint _r_ = (*env)->CallStaticIntMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_static_long_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallStaticLongMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jlong -java_interop_jnienv_call_static_long_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jlong _r_ = (*env)->CallStaticLongMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_static_float_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallStaticFloatMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_call_static_float_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jfloat _r_ = (*env)->CallStaticFloatMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_static_double_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallStaticDoubleMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_call_static_double_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - jdouble _r_ = (*env)->CallStaticDoubleMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void -java_interop_jnienv_call_static_void_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method) -{ - *_thrown = 0; - (*env)->CallStaticVoidMethod (env, type, method); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_call_static_void_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args) -{ - *_thrown = 0; - (*env)->CallStaticVoidMethodA (env, type, method, args); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API jstaticfieldID -java_interop_jnienv_get_static_field_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature) -{ - *_thrown = 0; - jstaticfieldID _r_ = (*env)->GetStaticFieldID (env, type, name, signature); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_get_static_object_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jobject _r_ = (*env)->GetStaticObjectField (env, type, field); - return _r_; -} - -JI_API jboolean -java_interop_jnienv_get_static_boolean_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jboolean _r_ = (*env)->GetStaticBooleanField (env, type, field); - return _r_; -} - -JI_API jbyte -java_interop_jnienv_get_static_byte_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jbyte _r_ = (*env)->GetStaticByteField (env, type, field); - return _r_; -} - -JI_API jchar -java_interop_jnienv_get_static_char_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jchar _r_ = (*env)->GetStaticCharField (env, type, field); - return _r_; -} - -JI_API jshort -java_interop_jnienv_get_static_short_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jshort _r_ = (*env)->GetStaticShortField (env, type, field); - return _r_; -} - -JI_API jint -java_interop_jnienv_get_static_int_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jint _r_ = (*env)->GetStaticIntField (env, type, field); - return _r_; -} - -JI_API jlong -java_interop_jnienv_get_static_long_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jlong _r_ = (*env)->GetStaticLongField (env, type, field); - return _r_; -} - -JI_API jfloat -java_interop_jnienv_get_static_float_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jfloat _r_ = (*env)->GetStaticFloatField (env, type, field); - return _r_; -} - -JI_API jdouble -java_interop_jnienv_get_static_double_field (JNIEnv *env, jclass type, jstaticfieldID field) -{ - jdouble _r_ = (*env)->GetStaticDoubleField (env, type, field); - return _r_; -} - -JI_API void -java_interop_jnienv_set_static_object_field (JNIEnv *env, jclass type, jstaticfieldID field, jobject value) -{ - (*env)->SetStaticObjectField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_boolean_field (JNIEnv *env, jclass type, jstaticfieldID field, jboolean value) -{ - (*env)->SetStaticBooleanField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_byte_field (JNIEnv *env, jclass type, jstaticfieldID field, jbyte value) -{ - (*env)->SetStaticByteField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_char_field (JNIEnv *env, jclass type, jstaticfieldID field, jchar value) -{ - (*env)->SetStaticCharField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_short_field (JNIEnv *env, jclass type, jstaticfieldID field, jshort value) -{ - (*env)->SetStaticShortField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_int_field (JNIEnv *env, jclass type, jstaticfieldID field, jint value) -{ - (*env)->SetStaticIntField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_long_field (JNIEnv *env, jclass type, jstaticfieldID field, jlong value) -{ - (*env)->SetStaticLongField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_float_field (JNIEnv *env, jclass type, jstaticfieldID field, jfloat value) -{ - (*env)->SetStaticFloatField (env, type, field, value); -} - -JI_API void -java_interop_jnienv_set_static_double_field (JNIEnv *env, jclass type, jstaticfieldID field, jdouble value) -{ - (*env)->SetStaticDoubleField (env, type, field, value); -} - -JI_API jstring -java_interop_jnienv_new_string (JNIEnv *env, jthrowable *_thrown, jchar* unicodeChars, jsize length) -{ - *_thrown = 0; - jstring _r_ = (*env)->NewString (env, unicodeChars, length); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jsize -java_interop_jnienv_get_string_length (JNIEnv *env, jstring stringInstance) -{ - jsize _r_ = (*env)->GetStringLength (env, stringInstance); - return _r_; -} - -JI_API const jchar* -java_interop_jnienv_get_string_chars (JNIEnv *env, jstring stringInstance, jboolean* isCopy) -{ - const jchar* _r_ = (*env)->GetStringChars (env, stringInstance, isCopy); - return _r_; -} - -JI_API void -java_interop_jnienv_release_string_chars (JNIEnv *env, jstring stringInstance, jchar* chars) -{ - (*env)->ReleaseStringChars (env, stringInstance, chars); -} - -JI_API jsize -java_interop_jnienv_get_array_length (JNIEnv *env, jarray array) -{ - jsize _r_ = (*env)->GetArrayLength (env, array); - return _r_; -} - -JI_API jobjectArray -java_interop_jnienv_new_object_array (JNIEnv *env, jthrowable *_thrown, jsize length, jclass elementClass, jobject initialElement) -{ - *_thrown = 0; - jobjectArray _r_ = (*env)->NewObjectArray (env, length, elementClass, initialElement); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_get_object_array_element (JNIEnv *env, jthrowable *_thrown, jobjectArray array, jsize index) -{ - *_thrown = 0; - jobject _r_ = (*env)->GetObjectArrayElement (env, array, index); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void -java_interop_jnienv_set_object_array_element (JNIEnv *env, jthrowable *_thrown, jobjectArray array, jsize index, jobject value) -{ - *_thrown = 0; - (*env)->SetObjectArrayElement (env, array, index, value); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API jbooleanArray -java_interop_jnienv_new_boolean_array (JNIEnv *env, jsize length) -{ - jbooleanArray _r_ = (*env)->NewBooleanArray (env, length); - return _r_; -} - -JI_API jbyteArray -java_interop_jnienv_new_byte_array (JNIEnv *env, jsize length) -{ - jbyteArray _r_ = (*env)->NewByteArray (env, length); - return _r_; -} - -JI_API jcharArray -java_interop_jnienv_new_char_array (JNIEnv *env, jsize length) -{ - jcharArray _r_ = (*env)->NewCharArray (env, length); - return _r_; -} - -JI_API jshortArray -java_interop_jnienv_new_short_array (JNIEnv *env, jsize length) -{ - jshortArray _r_ = (*env)->NewShortArray (env, length); - return _r_; -} - -JI_API jintArray -java_interop_jnienv_new_int_array (JNIEnv *env, jsize length) -{ - jintArray _r_ = (*env)->NewIntArray (env, length); - return _r_; -} - -JI_API jlongArray -java_interop_jnienv_new_long_array (JNIEnv *env, jsize length) -{ - jlongArray _r_ = (*env)->NewLongArray (env, length); - return _r_; -} - -JI_API jfloatArray -java_interop_jnienv_new_float_array (JNIEnv *env, jsize length) -{ - jfloatArray _r_ = (*env)->NewFloatArray (env, length); - return _r_; -} - -JI_API jdoubleArray -java_interop_jnienv_new_double_array (JNIEnv *env, jsize length) -{ - jdoubleArray _r_ = (*env)->NewDoubleArray (env, length); - return _r_; -} - -JI_API jboolean* -java_interop_jnienv_get_boolean_array_elements (JNIEnv *env, jbooleanArray array, jboolean* isCopy) -{ - jboolean* _r_ = (*env)->GetBooleanArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jbyte* -java_interop_jnienv_get_byte_array_elements (JNIEnv *env, jbyteArray array, jboolean* isCopy) -{ - jbyte* _r_ = (*env)->GetByteArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jchar* -java_interop_jnienv_get_char_array_elements (JNIEnv *env, jcharArray array, jboolean* isCopy) -{ - jchar* _r_ = (*env)->GetCharArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jshort* -java_interop_jnienv_get_short_array_elements (JNIEnv *env, jshortArray array, jboolean* isCopy) -{ - jshort* _r_ = (*env)->GetShortArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jint* -java_interop_jnienv_get_int_array_elements (JNIEnv *env, jintArray array, jboolean* isCopy) -{ - jint* _r_ = (*env)->GetIntArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jlong* -java_interop_jnienv_get_long_array_elements (JNIEnv *env, jlongArray array, jboolean* isCopy) -{ - jlong* _r_ = (*env)->GetLongArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jfloat* -java_interop_jnienv_get_float_array_elements (JNIEnv *env, jfloatArray array, jboolean* isCopy) -{ - jfloat* _r_ = (*env)->GetFloatArrayElements (env, array, isCopy); - return _r_; -} - -JI_API jdouble* -java_interop_jnienv_get_double_array_elements (JNIEnv *env, jdoubleArray array, jboolean* isCopy) -{ - jdouble* _r_ = (*env)->GetDoubleArrayElements (env, array, isCopy); - return _r_; -} - -JI_API void -java_interop_jnienv_release_boolean_array_elements (JNIEnv *env, jbooleanArray array, jboolean* elements, jint mode) -{ - (*env)->ReleaseBooleanArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_byte_array_elements (JNIEnv *env, jbyteArray array, jbyte* elements, jint mode) -{ - (*env)->ReleaseByteArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_char_array_elements (JNIEnv *env, jcharArray array, jchar* elements, jint mode) -{ - (*env)->ReleaseCharArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_short_array_elements (JNIEnv *env, jshortArray array, jshort* elements, jint mode) -{ - (*env)->ReleaseShortArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_int_array_elements (JNIEnv *env, jintArray array, jint* elements, jint mode) -{ - (*env)->ReleaseIntArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_long_array_elements (JNIEnv *env, jlongArray array, jlong* elements, jint mode) -{ - (*env)->ReleaseLongArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_float_array_elements (JNIEnv *env, jfloatArray array, jfloat* elements, jint mode) -{ - (*env)->ReleaseFloatArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_release_double_array_elements (JNIEnv *env, jdoubleArray array, jdouble* elements, jint mode) -{ - (*env)->ReleaseDoubleArrayElements (env, array, elements, mode); -} - -JI_API void -java_interop_jnienv_get_boolean_array_region (JNIEnv *env, jthrowable *_thrown, jbooleanArray array, jsize start, jsize length, jboolean* buffer) -{ - *_thrown = 0; - (*env)->GetBooleanArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_byte_array_region (JNIEnv *env, jthrowable *_thrown, jbyteArray array, jsize start, jsize length, jbyte* buffer) -{ - *_thrown = 0; - (*env)->GetByteArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_char_array_region (JNIEnv *env, jthrowable *_thrown, jcharArray array, jsize start, jsize length, jchar* buffer) -{ - *_thrown = 0; - (*env)->GetCharArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_short_array_region (JNIEnv *env, jthrowable *_thrown, jshortArray array, jsize start, jsize length, jshort* buffer) -{ - *_thrown = 0; - (*env)->GetShortArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_int_array_region (JNIEnv *env, jthrowable *_thrown, jintArray array, jsize start, jsize length, jint* buffer) -{ - *_thrown = 0; - (*env)->GetIntArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_long_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jlong* buffer) -{ - *_thrown = 0; - (*env)->GetLongArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_float_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jfloat* buffer) -{ - *_thrown = 0; - (*env)->GetFloatArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_get_double_array_region (JNIEnv *env, jthrowable *_thrown, jdoubleArray array, jsize start, jsize length, jdouble* buffer) -{ - *_thrown = 0; - (*env)->GetDoubleArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_boolean_array_region (JNIEnv *env, jthrowable *_thrown, jbooleanArray array, jsize start, jsize length, jboolean* buffer) -{ - *_thrown = 0; - (*env)->SetBooleanArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_byte_array_region (JNIEnv *env, jthrowable *_thrown, jbyteArray array, jsize start, jsize length, jbyte* buffer) -{ - *_thrown = 0; - (*env)->SetByteArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_char_array_region (JNIEnv *env, jthrowable *_thrown, jcharArray array, jsize start, jsize length, const jchar* buffer) -{ - *_thrown = 0; - (*env)->SetCharArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_short_array_region (JNIEnv *env, jthrowable *_thrown, jshortArray array, jsize start, jsize length, jshort* buffer) -{ - *_thrown = 0; - (*env)->SetShortArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_int_array_region (JNIEnv *env, jthrowable *_thrown, jintArray array, jsize start, jsize length, jint* buffer) -{ - *_thrown = 0; - (*env)->SetIntArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_long_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jlong* buffer) -{ - *_thrown = 0; - (*env)->SetLongArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_float_array_region (JNIEnv *env, jthrowable *_thrown, jfloatArray array, jsize start, jsize length, jfloat* buffer) -{ - *_thrown = 0; - (*env)->SetFloatArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API void -java_interop_jnienv_set_double_array_region (JNIEnv *env, jthrowable *_thrown, jdoubleArray array, jsize start, jsize length, jdouble* buffer) -{ - *_thrown = 0; - (*env)->SetDoubleArrayRegion (env, array, start, length, buffer); - *_thrown = (*env)->ExceptionOccurred (env); -} - -JI_API jint -java_interop_jnienv_register_natives (JNIEnv *env, jthrowable *_thrown, jclass type, const JNINativeMethod* methods, jint numMethods) -{ - *_thrown = 0; - jint _r_ = (*env)->RegisterNatives (env, type, methods, numMethods); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API jint -java_interop_jnienv_unregister_natives (JNIEnv *env, jclass type) -{ - jint _r_ = (*env)->UnregisterNatives (env, type); - return _r_; -} - -JI_API jint -java_interop_jnienv_monitor_enter (JNIEnv *env, jobject instance) -{ - jint _r_ = (*env)->MonitorEnter (env, instance); - return _r_; -} - -JI_API jint -java_interop_jnienv_monitor_exit (JNIEnv *env, jobject instance) -{ - jint _r_ = (*env)->MonitorExit (env, instance); - return _r_; -} - -JI_API jint -java_interop_jnienv_get_java_vm (JNIEnv *env, JavaVM** vm) -{ - jint _r_ = (*env)->GetJavaVM (env, vm); - return _r_; -} - -JI_API void* -java_interop_jnienv_get_primitive_array_critical (JNIEnv *env, jarray array, jboolean* isCopy) -{ - void* _r_ = (*env)->GetPrimitiveArrayCritical (env, array, isCopy); - return _r_; -} - -JI_API void -java_interop_jnienv_release_primitive_array_critical (JNIEnv *env, jarray array, void* carray, jint mode) -{ - (*env)->ReleasePrimitiveArrayCritical (env, array, carray, mode); -} - -JI_API jweak -java_interop_jnienv_new_weak_global_ref (JNIEnv *env, jobject instance) -{ - jweak _r_ = (*env)->NewWeakGlobalRef (env, instance); - return _r_; -} - -JI_API void -java_interop_jnienv_delete_weak_global_ref (JNIEnv *env, jobject instance) -{ - (*env)->DeleteWeakGlobalRef (env, instance); -} - -JI_API jboolean -java_interop_jnienv_exception_check (JNIEnv *env) -{ - jboolean _r_ = (*env)->ExceptionCheck (env); - return _r_; -} - -JI_API jobject -java_interop_jnienv_new_direct_byte_buffer (JNIEnv *env, jthrowable *_thrown, void* address, jlong capacity) -{ - *_thrown = 0; - jobject _r_ = (*env)->NewDirectByteBuffer (env, address, capacity); - *_thrown = (*env)->ExceptionOccurred (env); - return _r_; -} - -JI_API void* -java_interop_jnienv_get_direct_buffer_address (JNIEnv *env, jobject buffer) -{ - void* _r_ = (*env)->GetDirectBufferAddress (env, buffer); - return _r_; -} - -JI_API jlong -java_interop_jnienv_get_direct_buffer_capacity (JNIEnv *env, jobject buffer) -{ - jlong _r_ = (*env)->GetDirectBufferCapacity (env, buffer); - return _r_; -} - -JI_API jobjectRefType -java_interop_jnienv_get_object_ref_type (JNIEnv *env, jobject instance) -{ - jobjectRefType _r_ = (*env)->GetObjectRefType (env, instance); - return _r_; -} diff --git a/src/monodroid/jni/java_interop_api.h b/src/monodroid/jni/java_interop_api.h deleted file mode 100644 index 012c34a2948..00000000000 --- a/src/monodroid/jni/java_interop_api.h +++ /dev/null @@ -1,230 +0,0 @@ -/* - * Generated file; DO NOT EDIT! - * - * To make changes, edit Java.Interop/build-tools/jnienv-gen and rerun - */ - -#if !defined (__JAVA_INTEROP_NATIVE_H) -#define __JAVA_INTEROP_NATIVE_H - -#include - -typedef jmethodID jstaticmethodID; -typedef jfieldID jstaticfieldID; -typedef jobject jglobal; - -#if !defined(JI_NO_VISIBILITY) - /* VS 2010 and later have stdint.h */ - #if defined(_MSC_VER) - - #define JI_API_EXPORT __declspec(dllexport) - #define JI_API_IMPORT __declspec(dllimport) - - #else /* defined(_MSC_VER */ - - #define JI_API_EXPORT __attribute__ ((visibility ("default"))) - #define JI_API_IMPORT - - #endif /* !defined(_MSC_VER) */ - - #if defined(JI_DLL_EXPORT) - #define JI_API JI_API_EXPORT - #elif defined(JI_DLL_IMPORT) - #define JI_API JI_API_IMPORT - #else /* !defined(JI_DLL_IMPORT) && !defined(JI_API_IMPORT) */ - #define JI_API - #endif /* JI_DLL_EXPORT... */ -#else // JI_NO_VISIBILITY - #define JI_API -#endif // JI_NO_VISIBILITY - -JI_API jint java_interop_jnienv_get_version (JNIEnv *env); -JI_API jclass java_interop_jnienv_define_class (JNIEnv *env, jthrowable *_thrown, const char* name, jobject loader, const jbyte* buffer, jsize bufferLength); -JI_API jclass java_interop_jnienv_find_class (JNIEnv *env, jthrowable *_thrown, const char* classname); -JI_API jobject java_interop_jnienv_to_reflected_method (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method, jboolean isStatic); -JI_API jclass java_interop_jnienv_get_superclass (JNIEnv *env, jclass type); -JI_API jboolean java_interop_jnienv_is_assignable_from (JNIEnv *env, jclass class1, jclass class2); -JI_API jobject java_interop_jnienv_to_reflected_field (JNIEnv *env, jthrowable *_thrown, jclass type, jfieldID field, jboolean isStatic); -JI_API jint java_interop_jnienv_throw (JNIEnv *env, jthrowable toThrow); -JI_API jint java_interop_jnienv_throw_new (JNIEnv *env, jclass type, const char* message); -JI_API jthrowable java_interop_jnienv_exception_occurred (JNIEnv *env); -JI_API void java_interop_jnienv_exception_describe (JNIEnv *env); -JI_API void java_interop_jnienv_exception_clear (JNIEnv *env); -JI_API void java_interop_jnienv_fatal_error (JNIEnv *env, const char* message); -JI_API jint java_interop_jnienv_push_local_frame (JNIEnv *env, jint capacity); -JI_API jobject java_interop_jnienv_pop_local_frame (JNIEnv *env, jobject result); -JI_API jglobal java_interop_jnienv_new_global_ref (JNIEnv *env, jobject instance); -JI_API void java_interop_jnienv_delete_global_ref (JNIEnv *env, jobject instance); -JI_API void java_interop_jnienv_delete_local_ref (JNIEnv *env, jobject instance); -JI_API jboolean java_interop_jnienv_is_same_object (JNIEnv *env, jobject object1, jobject object2); -JI_API jobject java_interop_jnienv_new_local_ref (JNIEnv *env, jobject instance); -JI_API jint java_interop_jnienv_ensure_local_capacity (JNIEnv *env, jint capacity); -JI_API jobject java_interop_jnienv_alloc_object (JNIEnv *env, jthrowable *_thrown, jclass type); -JI_API jobject java_interop_jnienv_new_object (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method); -JI_API jobject java_interop_jnienv_new_object_a (JNIEnv *env, jthrowable *_thrown, jclass type, jmethodID method, jvalue* args); -JI_API jclass java_interop_jnienv_get_object_class (JNIEnv *env, jobject instance); -JI_API jboolean java_interop_jnienv_is_instance_of (JNIEnv *env, jobject instance, jclass type); -JI_API jmethodID java_interop_jnienv_get_method_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature); -JI_API jobject java_interop_jnienv_call_object_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jobject java_interop_jnienv_call_object_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jboolean java_interop_jnienv_call_boolean_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jboolean java_interop_jnienv_call_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jbyte java_interop_jnienv_call_byte_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jbyte java_interop_jnienv_call_byte_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jchar java_interop_jnienv_call_char_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jchar java_interop_jnienv_call_char_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jshort java_interop_jnienv_call_short_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jshort java_interop_jnienv_call_short_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jint java_interop_jnienv_call_int_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jint java_interop_jnienv_call_int_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jlong java_interop_jnienv_call_long_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jlong java_interop_jnienv_call_long_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jfloat java_interop_jnienv_call_float_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jfloat java_interop_jnienv_call_float_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jdouble java_interop_jnienv_call_double_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API jdouble java_interop_jnienv_call_double_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API void java_interop_jnienv_call_void_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method); -JI_API void java_interop_jnienv_call_void_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jmethodID method, jvalue* args); -JI_API jobject java_interop_jnienv_call_nonvirtual_object_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jobject java_interop_jnienv_call_nonvirtual_object_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jboolean java_interop_jnienv_call_nonvirtual_boolean_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jboolean java_interop_jnienv_call_nonvirtual_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jbyte java_interop_jnienv_call_nonvirtual_byte_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jbyte java_interop_jnienv_call_nonvirtual_byte_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jchar java_interop_jnienv_call_nonvirtual_char_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jchar java_interop_jnienv_call_nonvirtual_char_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jshort java_interop_jnienv_call_nonvirtual_short_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jshort java_interop_jnienv_call_nonvirtual_short_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jint java_interop_jnienv_call_nonvirtual_int_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jint java_interop_jnienv_call_nonvirtual_int_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jlong java_interop_jnienv_call_nonvirtual_long_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jlong java_interop_jnienv_call_nonvirtual_long_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jfloat java_interop_jnienv_call_nonvirtual_float_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jfloat java_interop_jnienv_call_nonvirtual_float_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jdouble java_interop_jnienv_call_nonvirtual_double_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API jdouble java_interop_jnienv_call_nonvirtual_double_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API void java_interop_jnienv_call_nonvirtual_void_method (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method); -JI_API void java_interop_jnienv_call_nonvirtual_void_method_a (JNIEnv *env, jthrowable *_thrown, jobject instance, jclass type, jmethodID method, jvalue* args); -JI_API jfieldID java_interop_jnienv_get_field_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature); -JI_API jobject java_interop_jnienv_get_object_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jboolean java_interop_jnienv_get_boolean_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jbyte java_interop_jnienv_get_byte_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jchar java_interop_jnienv_get_char_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jshort java_interop_jnienv_get_short_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jint java_interop_jnienv_get_int_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jlong java_interop_jnienv_get_long_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jfloat java_interop_jnienv_get_float_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API jdouble java_interop_jnienv_get_double_field (JNIEnv *env, jobject instance, jfieldID field); -JI_API void java_interop_jnienv_set_object_field (JNIEnv *env, jobject instance, jfieldID field, jobject value); -JI_API void java_interop_jnienv_set_boolean_field (JNIEnv *env, jobject instance, jfieldID field, jboolean value); -JI_API void java_interop_jnienv_set_byte_field (JNIEnv *env, jobject instance, jfieldID field, jbyte value); -JI_API void java_interop_jnienv_set_char_field (JNIEnv *env, jobject instance, jfieldID field, jchar value); -JI_API void java_interop_jnienv_set_short_field (JNIEnv *env, jobject instance, jfieldID field, jshort value); -JI_API void java_interop_jnienv_set_int_field (JNIEnv *env, jobject instance, jfieldID field, jint value); -JI_API void java_interop_jnienv_set_long_field (JNIEnv *env, jobject instance, jfieldID field, jlong value); -JI_API void java_interop_jnienv_set_float_field (JNIEnv *env, jobject instance, jfieldID field, jfloat value); -JI_API void java_interop_jnienv_set_double_field (JNIEnv *env, jobject instance, jfieldID field, jdouble value); -JI_API jstaticmethodID java_interop_jnienv_get_static_method_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature); -JI_API jobject java_interop_jnienv_call_static_object_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jobject java_interop_jnienv_call_static_object_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jboolean java_interop_jnienv_call_static_boolean_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jboolean java_interop_jnienv_call_static_boolean_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jbyte java_interop_jnienv_call_static_byte_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jbyte java_interop_jnienv_call_static_byte_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jchar java_interop_jnienv_call_static_char_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jchar java_interop_jnienv_call_static_char_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jshort java_interop_jnienv_call_static_short_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jshort java_interop_jnienv_call_static_short_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jint java_interop_jnienv_call_static_int_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jint java_interop_jnienv_call_static_int_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jlong java_interop_jnienv_call_static_long_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jlong java_interop_jnienv_call_static_long_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jfloat java_interop_jnienv_call_static_float_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jfloat java_interop_jnienv_call_static_float_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jdouble java_interop_jnienv_call_static_double_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API jdouble java_interop_jnienv_call_static_double_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API void java_interop_jnienv_call_static_void_method (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method); -JI_API void java_interop_jnienv_call_static_void_method_a (JNIEnv *env, jthrowable *_thrown, jclass type, jstaticmethodID method, jvalue* args); -JI_API jstaticfieldID java_interop_jnienv_get_static_field_id (JNIEnv *env, jthrowable *_thrown, jclass type, const char* name, const char* signature); -JI_API jobject java_interop_jnienv_get_static_object_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jboolean java_interop_jnienv_get_static_boolean_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jbyte java_interop_jnienv_get_static_byte_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jchar java_interop_jnienv_get_static_char_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jshort java_interop_jnienv_get_static_short_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jint java_interop_jnienv_get_static_int_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jlong java_interop_jnienv_get_static_long_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jfloat java_interop_jnienv_get_static_float_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API jdouble java_interop_jnienv_get_static_double_field (JNIEnv *env, jclass type, jstaticfieldID field); -JI_API void java_interop_jnienv_set_static_object_field (JNIEnv *env, jclass type, jstaticfieldID field, jobject value); -JI_API void java_interop_jnienv_set_static_boolean_field (JNIEnv *env, jclass type, jstaticfieldID field, jboolean value); -JI_API void java_interop_jnienv_set_static_byte_field (JNIEnv *env, jclass type, jstaticfieldID field, jbyte value); -JI_API void java_interop_jnienv_set_static_char_field (JNIEnv *env, jclass type, jstaticfieldID field, jchar value); -JI_API void java_interop_jnienv_set_static_short_field (JNIEnv *env, jclass type, jstaticfieldID field, jshort value); -JI_API void java_interop_jnienv_set_static_int_field (JNIEnv *env, jclass type, jstaticfieldID field, jint value); -JI_API void java_interop_jnienv_set_static_long_field (JNIEnv *env, jclass type, jstaticfieldID field, jlong value); -JI_API void java_interop_jnienv_set_static_float_field (JNIEnv *env, jclass type, jstaticfieldID field, jfloat value); -JI_API void java_interop_jnienv_set_static_double_field (JNIEnv *env, jclass type, jstaticfieldID field, jdouble value); -JI_API jstring java_interop_jnienv_new_string (JNIEnv *env, jthrowable *_thrown, jchar* unicodeChars, jsize length); -JI_API jsize java_interop_jnienv_get_string_length (JNIEnv *env, jstring stringInstance); -JI_API const jchar* java_interop_jnienv_get_string_chars (JNIEnv *env, jstring stringInstance, jboolean* isCopy); -JI_API void java_interop_jnienv_release_string_chars (JNIEnv *env, jstring stringInstance, jchar* chars); -JI_API jsize java_interop_jnienv_get_array_length (JNIEnv *env, jarray array); -JI_API jobjectArray java_interop_jnienv_new_object_array (JNIEnv *env, jthrowable *_thrown, jsize length, jclass elementClass, jobject initialElement); -JI_API jobject java_interop_jnienv_get_object_array_element (JNIEnv *env, jthrowable *_thrown, jobjectArray array, jsize index); -JI_API void java_interop_jnienv_set_object_array_element (JNIEnv *env, jthrowable *_thrown, jobjectArray array, jsize index, jobject value); -JI_API jbooleanArray java_interop_jnienv_new_boolean_array (JNIEnv *env, jsize length); -JI_API jbyteArray java_interop_jnienv_new_byte_array (JNIEnv *env, jsize length); -JI_API jcharArray java_interop_jnienv_new_char_array (JNIEnv *env, jsize length); -JI_API jshortArray java_interop_jnienv_new_short_array (JNIEnv *env, jsize length); -JI_API jintArray java_interop_jnienv_new_int_array (JNIEnv *env, jsize length); -JI_API jlongArray java_interop_jnienv_new_long_array (JNIEnv *env, jsize length); -JI_API jfloatArray java_interop_jnienv_new_float_array (JNIEnv *env, jsize length); -JI_API jdoubleArray java_interop_jnienv_new_double_array (JNIEnv *env, jsize length); -JI_API jboolean* java_interop_jnienv_get_boolean_array_elements (JNIEnv *env, jbooleanArray array, jboolean* isCopy); -JI_API jbyte* java_interop_jnienv_get_byte_array_elements (JNIEnv *env, jbyteArray array, jboolean* isCopy); -JI_API jchar* java_interop_jnienv_get_char_array_elements (JNIEnv *env, jcharArray array, jboolean* isCopy); -JI_API jshort* java_interop_jnienv_get_short_array_elements (JNIEnv *env, jshortArray array, jboolean* isCopy); -JI_API jint* java_interop_jnienv_get_int_array_elements (JNIEnv *env, jintArray array, jboolean* isCopy); -JI_API jlong* java_interop_jnienv_get_long_array_elements (JNIEnv *env, jlongArray array, jboolean* isCopy); -JI_API jfloat* java_interop_jnienv_get_float_array_elements (JNIEnv *env, jfloatArray array, jboolean* isCopy); -JI_API jdouble* java_interop_jnienv_get_double_array_elements (JNIEnv *env, jdoubleArray array, jboolean* isCopy); -JI_API void java_interop_jnienv_release_boolean_array_elements (JNIEnv *env, jbooleanArray array, jboolean* elements, jint mode); -JI_API void java_interop_jnienv_release_byte_array_elements (JNIEnv *env, jbyteArray array, jbyte* elements, jint mode); -JI_API void java_interop_jnienv_release_char_array_elements (JNIEnv *env, jcharArray array, jchar* elements, jint mode); -JI_API void java_interop_jnienv_release_short_array_elements (JNIEnv *env, jshortArray array, jshort* elements, jint mode); -JI_API void java_interop_jnienv_release_int_array_elements (JNIEnv *env, jintArray array, jint* elements, jint mode); -JI_API void java_interop_jnienv_release_long_array_elements (JNIEnv *env, jlongArray array, jlong* elements, jint mode); -JI_API void java_interop_jnienv_release_float_array_elements (JNIEnv *env, jfloatArray array, jfloat* elements, jint mode); -JI_API void java_interop_jnienv_release_double_array_elements (JNIEnv *env, jdoubleArray array, jdouble* elements, jint mode); -JI_API void java_interop_jnienv_get_boolean_array_region (JNIEnv *env, jthrowable *_thrown, jbooleanArray array, jsize start, jsize length, jboolean* buffer); -JI_API void java_interop_jnienv_get_byte_array_region (JNIEnv *env, jthrowable *_thrown, jbyteArray array, jsize start, jsize length, jbyte* buffer); -JI_API void java_interop_jnienv_get_char_array_region (JNIEnv *env, jthrowable *_thrown, jcharArray array, jsize start, jsize length, jchar* buffer); -JI_API void java_interop_jnienv_get_short_array_region (JNIEnv *env, jthrowable *_thrown, jshortArray array, jsize start, jsize length, jshort* buffer); -JI_API void java_interop_jnienv_get_int_array_region (JNIEnv *env, jthrowable *_thrown, jintArray array, jsize start, jsize length, jint* buffer); -JI_API void java_interop_jnienv_get_long_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jlong* buffer); -JI_API void java_interop_jnienv_get_float_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jfloat* buffer); -JI_API void java_interop_jnienv_get_double_array_region (JNIEnv *env, jthrowable *_thrown, jdoubleArray array, jsize start, jsize length, jdouble* buffer); -JI_API void java_interop_jnienv_set_boolean_array_region (JNIEnv *env, jthrowable *_thrown, jbooleanArray array, jsize start, jsize length, jboolean* buffer); -JI_API void java_interop_jnienv_set_byte_array_region (JNIEnv *env, jthrowable *_thrown, jbyteArray array, jsize start, jsize length, jbyte* buffer); -JI_API void java_interop_jnienv_set_char_array_region (JNIEnv *env, jthrowable *_thrown, jcharArray array, jsize start, jsize length, const jchar* buffer); -JI_API void java_interop_jnienv_set_short_array_region (JNIEnv *env, jthrowable *_thrown, jshortArray array, jsize start, jsize length, jshort* buffer); -JI_API void java_interop_jnienv_set_int_array_region (JNIEnv *env, jthrowable *_thrown, jintArray array, jsize start, jsize length, jint* buffer); -JI_API void java_interop_jnienv_set_long_array_region (JNIEnv *env, jthrowable *_thrown, jlongArray array, jsize start, jsize length, jlong* buffer); -JI_API void java_interop_jnienv_set_float_array_region (JNIEnv *env, jthrowable *_thrown, jfloatArray array, jsize start, jsize length, jfloat* buffer); -JI_API void java_interop_jnienv_set_double_array_region (JNIEnv *env, jthrowable *_thrown, jdoubleArray array, jsize start, jsize length, jdouble* buffer); -JI_API jint java_interop_jnienv_register_natives (JNIEnv *env, jthrowable *_thrown, jclass type, const JNINativeMethod* methods, jint numMethods); -JI_API jint java_interop_jnienv_unregister_natives (JNIEnv *env, jclass type); -JI_API jint java_interop_jnienv_monitor_enter (JNIEnv *env, jobject instance); -JI_API jint java_interop_jnienv_monitor_exit (JNIEnv *env, jobject instance); -JI_API jint java_interop_jnienv_get_java_vm (JNIEnv *env, JavaVM** vm); -JI_API void* java_interop_jnienv_get_primitive_array_critical (JNIEnv *env, jarray array, jboolean* isCopy); -JI_API void java_interop_jnienv_release_primitive_array_critical (JNIEnv *env, jarray array, void* carray, jint mode); -JI_API jweak java_interop_jnienv_new_weak_global_ref (JNIEnv *env, jobject instance); -JI_API void java_interop_jnienv_delete_weak_global_ref (JNIEnv *env, jobject instance); -JI_API jboolean java_interop_jnienv_exception_check (JNIEnv *env); -JI_API jobject java_interop_jnienv_new_direct_byte_buffer (JNIEnv *env, jthrowable *_thrown, void* address, jlong capacity); -JI_API void* java_interop_jnienv_get_direct_buffer_address (JNIEnv *env, jobject buffer); -JI_API jlong java_interop_jnienv_get_direct_buffer_capacity (JNIEnv *env, jobject buffer); -JI_API jobjectRefType java_interop_jnienv_get_object_ref_type (JNIEnv *env, jobject instance); - -#endif // __JAVA_INTEROP_NATIVE_H diff --git a/src/monodroid/jni/pinvoke-override-api.cc b/src/monodroid/jni/pinvoke-override-api.cc index ab808b33646..fe4bc69c3a6 100644 --- a/src/monodroid/jni/pinvoke-override-api.cc +++ b/src/monodroid/jni/pinvoke-override-api.cc @@ -4,10 +4,6 @@ #include #include -extern "C" { -#include "java_interop_api.h" -} - #include "globals.hh" #include "monodroid-glue.hh" #include "monodroid-glue-internal.hh" diff --git a/src/monodroid/jni/pinvoke-tables.include b/src/monodroid/jni/pinvoke-tables.include index 37c91a53f3f..1c964cd3b9d 100644 --- a/src/monodroid/jni/pinvoke-tables.include +++ b/src/monodroid/jni/pinvoke-tables.include @@ -10,243 +10,55 @@ #if INTPTR_MAX == INT64_MAX //64-bit internal p/invoke table static PinvokeEntry internal_pinvokes[] = { - {0x42e771360643f, "java_interop_jnienv_throw", reinterpret_cast(&java_interop_jnienv_throw)}, - {0x543ebf149560ea, "java_interop_jnienv_set_static_float_field", reinterpret_cast(&java_interop_jnienv_set_static_float_field)}, - {0x2479297727c239a, "java_interop_jnienv_get_direct_buffer_capacity", reinterpret_cast(&java_interop_jnienv_get_direct_buffer_capacity)}, {0x373adf4d92171c9, "monodroid_get_dylib", reinterpret_cast(&monodroid_get_dylib)}, - {0x3e2bc5fabcedd9c, "java_interop_jnienv_set_object_array_element", reinterpret_cast(&java_interop_jnienv_set_object_array_element)}, - {0x3f737d68dae1669, "java_interop_jnienv_set_boolean_field", reinterpret_cast(&java_interop_jnienv_set_boolean_field)}, - {0x40e5a2504f9159f, "java_interop_jnienv_get_float_array_region", reinterpret_cast(&java_interop_jnienv_get_float_array_region)}, - {0x53913ea7d1d6698, "java_interop_jnienv_set_static_char_field", reinterpret_cast(&java_interop_jnienv_set_static_char_field)}, - {0x598d2f254820f3e, "java_interop_jnienv_get_static_boolean_field", reinterpret_cast(&java_interop_jnienv_get_static_boolean_field)}, - {0x5b18f8f4ce49a20, "java_interop_jnienv_monitor_enter", reinterpret_cast(&java_interop_jnienv_monitor_enter)}, - {0x70785cce71f97d8, "java_interop_jnienv_new_double_array", reinterpret_cast(&java_interop_jnienv_new_double_array)}, - {0x965a897d67e700b, "java_interop_jnienv_new_boolean_array", reinterpret_cast(&java_interop_jnienv_new_boolean_array)}, - {0xc4dc2d6b38c69b7, "java_interop_jnienv_set_long_field", reinterpret_cast(&java_interop_jnienv_set_long_field)}, - {0xd79adc86d9b8e08, "java_interop_jnienv_get_object_class", reinterpret_cast(&java_interop_jnienv_get_object_class)}, - {0xdfd72a294718e43, "java_interop_jnienv_throw_new", reinterpret_cast(&java_interop_jnienv_throw_new)}, {0x1043bb17531fea08, "monodroid_strdup_printf", reinterpret_cast(&monodroid_strdup_printf)}, - {0x109e10330667aeed, "java_interop_jnienv_get_int_array_region", reinterpret_cast(&java_interop_jnienv_get_int_array_region)}, {0x10c1189ecda630bf, "_monodroid_max_gref_get", reinterpret_cast(&_monodroid_max_gref_get)}, - {0x12a4822c394e2605, "java_interop_jnienv_call_static_boolean_method", reinterpret_cast(&java_interop_jnienv_call_static_boolean_method)}, - {0x141082573242b493, "java_interop_jnienv_new_string", reinterpret_cast(&java_interop_jnienv_new_string)}, - {0x16d56322f25dfcc2, "java_interop_jnienv_call_static_void_method_a", reinterpret_cast(&java_interop_jnienv_call_static_void_method_a)}, - {0x1727a9d5c73fd490, "java_interop_jnienv_fatal_error", reinterpret_cast(&java_interop_jnienv_fatal_error)}, {0x175432d66789c506, "_monodroid_gref_log_new", reinterpret_cast(&_monodroid_gref_log_new)}, {0x176f0fe8a1775237, "_monodroid_get_identity_hash_code", reinterpret_cast(&_monodroid_get_identity_hash_code)}, - {0x178951bf6c73e1bc, "java_interop_jnienv_set_static_double_field", reinterpret_cast(&java_interop_jnienv_set_static_double_field)}, {0x1806f57aaf00fc1c, "_monodroid_gref_log_delete", reinterpret_cast(&_monodroid_gref_log_delete)}, - {0x183915b1ffa5d846, "java_interop_jnienv_unregister_natives", reinterpret_cast(&java_interop_jnienv_unregister_natives)}, - {0x18473bfe126468db, "java_interop_jnienv_call_nonvirtual_byte_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_byte_method)}, - {0x184ec8d982c82b43, "java_interop_jnienv_call_static_int_method", reinterpret_cast(&java_interop_jnienv_call_static_int_method)}, - {0x18ba7c75142ec560, "java_interop_jnienv_new_object_a", reinterpret_cast(&java_interop_jnienv_new_object_a)}, - {0x18bee2a981e26b92, "java_interop_jnienv_call_int_method_a", reinterpret_cast(&java_interop_jnienv_call_int_method_a)}, {0x19a8d36d0622ca80, "_monodroid_lookup_replacement_type", reinterpret_cast(&_monodroid_lookup_replacement_type)}, - {0x1c898e245c5afc3e, "java_interop_jnienv_get_object_array_element", reinterpret_cast(&java_interop_jnienv_get_object_array_element)}, - {0x1ce27f511eeb8a31, "java_interop_jnienv_get_string_chars", reinterpret_cast(&java_interop_jnienv_get_string_chars)}, - {0x1d2e846740037290, "java_interop_jnienv_to_reflected_field", reinterpret_cast(&java_interop_jnienv_to_reflected_field)}, - {0x1e2e8e010f72f88b, "java_interop_jnienv_set_double_field", reinterpret_cast(&java_interop_jnienv_set_double_field)}, {0x1e3dbf97c632d454, "_monodroid_get_network_interface_up_state", reinterpret_cast(&_monodroid_get_network_interface_up_state)}, - {0x1f45fe5a749c4bf9, "java_interop_jnienv_call_static_char_method", reinterpret_cast(&java_interop_jnienv_call_static_char_method)}, - {0x1fc2f8b1266aede2, "java_interop_jnienv_call_static_double_method_a", reinterpret_cast(&java_interop_jnienv_call_static_double_method_a)}, {0x220912764f83079f, "_monodroid_get_network_interface_supports_multicast", reinterpret_cast(&_monodroid_get_network_interface_supports_multicast)}, - {0x245d47b838c32579, "java_interop_jnienv_call_long_method", reinterpret_cast(&java_interop_jnienv_call_long_method)}, - {0x29428b28a47ee6c2, "java_interop_jnienv_call_static_object_method_a", reinterpret_cast(&java_interop_jnienv_call_static_object_method_a)}, {0x29ab0d309b3e5709, "path_combine", reinterpret_cast(&path_combine)}, - {0x29bec106dfd40510, "java_interop_jnienv_get_string_length", reinterpret_cast(&java_interop_jnienv_get_string_length)}, - {0x2c304445b6e18c77, "java_interop_jnienv_new_byte_array", reinterpret_cast(&java_interop_jnienv_new_byte_array)}, - {0x2c83df5c1a82572e, "java_interop_jnienv_call_static_short_method_a", reinterpret_cast(&java_interop_jnienv_call_static_short_method_a)}, - {0x2de0e8e630852a26, "java_interop_jnienv_set_float_array_region", reinterpret_cast(&java_interop_jnienv_set_float_array_region)}, - {0x2dfe1c12b6c13977, "java_interop_jnienv_call_object_method_a", reinterpret_cast(&java_interop_jnienv_call_object_method_a)}, - {0x2ea63210ddc31c03, "java_interop_jnienv_call_char_method_a", reinterpret_cast(&java_interop_jnienv_call_char_method_a)}, - {0x2ee3cc684f79bab7, "java_interop_jnienv_new_short_array", reinterpret_cast(&java_interop_jnienv_new_short_array)}, - {0x2fb1ec16359c46f2, "java_interop_jnienv_release_short_array_elements", reinterpret_cast(&java_interop_jnienv_release_short_array_elements)}, {0x3192fa7d90a50ec7, "_monodroid_detect_cpu_and_architecture", reinterpret_cast(&_monodroid_detect_cpu_and_architecture)}, - {0x31b69ab8f1525bde, "java_interop_jnienv_call_nonvirtual_float_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_float_method_a)}, - {0x31cd2d84737102f0, "java_interop_jnienv_get_float_field", reinterpret_cast(&java_interop_jnienv_get_float_field)}, - {0x322143827dfc2ced, "java_interop_jnienv_push_local_frame", reinterpret_cast(&java_interop_jnienv_push_local_frame)}, {0x32bf1b201328ec3b, "monodroid_strfreev", reinterpret_cast(&monodroid_strfreev)}, - {0x34186fceaf3080a9, "java_interop_jnienv_call_object_method", reinterpret_cast(&java_interop_jnienv_call_object_method)}, - {0x35217dfb42e3c1fd, "java_interop_jnienv_call_boolean_method", reinterpret_cast(&java_interop_jnienv_call_boolean_method)}, - {0x353c0831eea4258e, "java_interop_jnienv_exception_describe", reinterpret_cast(&java_interop_jnienv_exception_describe)}, - {0x38c19fd83ad25517, "java_interop_jnienv_get_short_array_region", reinterpret_cast(&java_interop_jnienv_get_short_array_region)}, - {0x3962bf1ef305c886, "java_interop_jnienv_call_nonvirtual_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_byte_method_a)}, - {0x39d16feee6841b00, "java_interop_jnienv_call_static_object_method", reinterpret_cast(&java_interop_jnienv_call_static_object_method)}, - {0x3a2fc898129453d4, "java_interop_jnienv_new_object", reinterpret_cast(&java_interop_jnienv_new_object)}, - {0x3b039d1461774781, "java_interop_jnienv_call_static_double_method", reinterpret_cast(&java_interop_jnienv_call_static_double_method)}, - {0x3b0bf3474d4f23c7, "java_interop_jnienv_call_int_method", reinterpret_cast(&java_interop_jnienv_call_int_method)}, {0x3c0a4e871b763158, "_monodroid_get_dns_servers", reinterpret_cast(&_monodroid_get_dns_servers)}, - {0x3d3905b906d944d3, "java_interop_jnienv_register_natives", reinterpret_cast(&java_interop_jnienv_register_natives)}, - {0x3d534e631f70fa1c, "java_interop_jnienv_call_void_method_a", reinterpret_cast(&java_interop_jnienv_call_void_method_a)}, - {0x3fd9efdde1154aa7, "java_interop_jnienv_get_boolean_field", reinterpret_cast(&java_interop_jnienv_get_boolean_field)}, - {0x41d75f13f1d86044, "java_interop_jnienv_is_instance_of", reinterpret_cast(&java_interop_jnienv_is_instance_of)}, - {0x427a60ecf72293f4, "java_interop_jnienv_get_char_array_region", reinterpret_cast(&java_interop_jnienv_get_char_array_region)}, - {0x433460c782b745a7, "java_interop_jnienv_get_long_field", reinterpret_cast(&java_interop_jnienv_get_long_field)}, - {0x44b2cfed4e43af02, "java_interop_jnienv_get_superclass", reinterpret_cast(&java_interop_jnienv_get_superclass)}, {0x48955c31ca757fc5, "_monodroid_gc_wait_for_bridge_processing", reinterpret_cast(&_monodroid_gc_wait_for_bridge_processing)}, - {0x49a9fef507b3909a, "java_interop_jnienv_delete_weak_global_ref", reinterpret_cast(&java_interop_jnienv_delete_weak_global_ref)}, - {0x49b17252fa3f6dbb, "java_interop_jnienv_call_char_method", reinterpret_cast(&java_interop_jnienv_call_char_method)}, {0x4b5597adf16d7abc, "monodroid_get_namespaced_system_property", reinterpret_cast(&monodroid_get_namespaced_system_property)}, - {0x4b985afa3ef06398, "java_interop_jnienv_call_nonvirtual_int_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_int_method_a)}, - {0x4d67ecd2c49e0160, "java_interop_jnienv_new_direct_byte_buffer", reinterpret_cast(&java_interop_jnienv_new_direct_byte_buffer)}, - {0x4d95e0d46ff4fe45, "java_interop_jnienv_new_float_array", reinterpret_cast(&java_interop_jnienv_new_float_array)}, - {0x4ff194fa49643e88, "java_interop_jnienv_get_static_method_id", reinterpret_cast(&java_interop_jnienv_get_static_method_id)}, {0x518c6c6cf43ad358, "monodroid_get_system_property", reinterpret_cast(&monodroid_get_system_property)}, - {0x55394fba3913eadc, "java_interop_jnienv_call_static_char_method_a", reinterpret_cast(&java_interop_jnienv_call_static_char_method_a)}, - {0x57e8b5153618d1d9, "java_interop_jnienv_call_nonvirtual_short_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_short_method)}, {0x5863efa9eb2c1a37, "_monodroid_lref_log_delete", reinterpret_cast(&_monodroid_lref_log_delete)}, - {0x5da3b5c7e61818ea, "java_interop_jnienv_call_static_short_method", reinterpret_cast(&java_interop_jnienv_call_static_short_method)}, - {0x5e04318011c705d9, "java_interop_jnienv_call_float_method", reinterpret_cast(&java_interop_jnienv_call_float_method)}, {0x60638f3da6a0fcf5, "monodroid_log", reinterpret_cast(&monodroid_log)}, {0x60f779f5c86f6c4f, "monodroid_dylib_mono_new", reinterpret_cast(&monodroid_dylib_mono_new)}, - {0x625c36257f6c547f, "java_interop_jnienv_is_assignable_from", reinterpret_cast(&java_interop_jnienv_is_assignable_from)}, - {0x674f90bffe413dbf, "java_interop_jnienv_delete_global_ref", reinterpret_cast(&java_interop_jnienv_delete_global_ref)}, - {0x68dd66f889fd524d, "java_interop_jnienv_get_version", reinterpret_cast(&java_interop_jnienv_get_version)}, - {0x69325a25dc74deb7, "java_interop_jnienv_call_nonvirtual_object_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_object_method)}, - {0x6938a3dbf4bd6690, "java_interop_jnienv_get_boolean_array_elements", reinterpret_cast(&java_interop_jnienv_get_boolean_array_elements)}, - {0x696e7de6f56818be, "java_interop_jnienv_get_int_array_elements", reinterpret_cast(&java_interop_jnienv_get_int_array_elements)}, {0x697dceb3becaf6ca, "monodroid_timing_start", reinterpret_cast(&monodroid_timing_start)}, - {0x6a37a2772710d110, "java_interop_jnienv_get_object_ref_type", reinterpret_cast(&java_interop_jnienv_get_object_ref_type)}, - {0x6acabf92b2f0d53a, "java_interop_jnienv_call_nonvirtual_object_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_object_method_a)}, {0x6c158ba26cb2a283, "java_interop_free", reinterpret_cast(&java_interop_free)}, {0x6d40bd05c4c4f514, "monodroid_TypeManager_get_java_class_name", reinterpret_cast(&monodroid_TypeManager_get_java_class_name)}, - {0x6ec837c8eaa4a0b5, "java_interop_jnienv_new_global_ref", reinterpret_cast(&java_interop_jnienv_new_global_ref)}, - {0x6f8ca1a1b0b5e909, "java_interop_jnienv_get_static_float_field", reinterpret_cast(&java_interop_jnienv_get_static_float_field)}, {0x70972261de149c86, "monodroid_store_package_name", reinterpret_cast(&monodroid_store_package_name)}, - {0x70b6585c6fdec7e4, "java_interop_jnienv_monitor_exit", reinterpret_cast(&java_interop_jnienv_monitor_exit)}, - {0x70eddc3ffe338a74, "java_interop_jnienv_call_double_method_a", reinterpret_cast(&java_interop_jnienv_call_double_method_a)}, - {0x710276bf78efcc67, "java_interop_jnienv_get_char_array_elements", reinterpret_cast(&java_interop_jnienv_get_char_array_elements)}, - {0x719e64ba17409917, "java_interop_jnienv_call_nonvirtual_char_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_char_method)}, {0x72eda5289cafaeb8, "recv_uninterrupted", reinterpret_cast(&recv_uninterrupted)}, - {0x730671020022a0b9, "java_interop_jnienv_get_double_field", reinterpret_cast(&java_interop_jnienv_get_double_field)}, {0x7360ac888ce71aa7, "_monodroid_freeifaddrs", reinterpret_cast(&_monodroid_freeifaddrs)}, {0x73bdc18ed8d9ec13, "_monodroid_getifaddrs", reinterpret_cast(&_monodroid_getifaddrs)}, - {0x74743b2e706fcd5d, "java_interop_jnienv_get_static_short_field", reinterpret_cast(&java_interop_jnienv_get_static_short_field)}, - {0x7592a934dfa4b061, "java_interop_jnienv_set_double_array_region", reinterpret_cast(&java_interop_jnienv_set_double_array_region)}, - {0x7719501116a80d30, "java_interop_jnienv_call_nonvirtual_long_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_long_method_a)}, - {0x77569a4ad2582467, "java_interop_jnienv_get_array_length", reinterpret_cast(&java_interop_jnienv_get_array_length)}, - {0x7786c407956f2942, "java_interop_jnienv_call_static_float_method", reinterpret_cast(&java_interop_jnienv_call_static_float_method)}, - {0x77f56626aca0c722, "java_interop_jnienv_get_static_char_field", reinterpret_cast(&java_interop_jnienv_get_static_char_field)}, - {0x78c0121aaf495aa7, "java_interop_jnienv_call_nonvirtual_char_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_char_method_a)}, - {0x78ebbeb81efef870, "java_interop_jnienv_get_static_long_field", reinterpret_cast(&java_interop_jnienv_get_static_long_field)}, {0x79bf23727ef47720, "_monodroid_counters_dump", reinterpret_cast(&_monodroid_counters_dump)}, - {0x7ac4146944a7a76c, "java_interop_jnienv_exception_occurred", reinterpret_cast(&java_interop_jnienv_exception_occurred)}, - {0x7b42f4589ab4d889, "java_interop_jnienv_release_double_array_elements", reinterpret_cast(&java_interop_jnienv_release_double_array_elements)}, - {0x7ba89984de591434, "java_interop_jnienv_call_byte_method", reinterpret_cast(&java_interop_jnienv_call_byte_method)}, - {0x7c4527be7b17b903, "java_interop_jnienv_get_byte_field", reinterpret_cast(&java_interop_jnienv_get_byte_field)}, - {0x7cf1c9fb52b951c8, "java_interop_jnienv_call_void_method", reinterpret_cast(&java_interop_jnienv_call_void_method)}, - {0x7e60d051829608b2, "java_interop_jnienv_call_nonvirtual_double_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_double_method)}, - {0x7edb7cf15fa9ca8a, "java_interop_jnienv_call_double_method", reinterpret_cast(&java_interop_jnienv_call_double_method)}, - {0x854f882ec77f0279, "java_interop_jnienv_release_float_array_elements", reinterpret_cast(&java_interop_jnienv_release_float_array_elements)}, - {0x86a0e06625f10a17, "java_interop_jnienv_call_nonvirtual_int_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_int_method)}, - {0x871eaf825a075ea7, "java_interop_jnienv_get_long_array_elements", reinterpret_cast(&java_interop_jnienv_get_long_array_elements)}, - {0x8769675037c979ef, "java_interop_jnienv_release_int_array_elements", reinterpret_cast(&java_interop_jnienv_release_int_array_elements)}, {0x8c92c48613773f14, "create_public_directory", reinterpret_cast(&create_public_directory)}, - {0x8d19e2cbb2491d61, "java_interop_jnienv_get_static_byte_field", reinterpret_cast(&java_interop_jnienv_get_static_byte_field)}, - {0x9031bf4f8a4baa19, "java_interop_jnienv_exception_check", reinterpret_cast(&java_interop_jnienv_exception_check)}, - {0x92504983f9ac7138, "java_interop_jnienv_call_static_long_method", reinterpret_cast(&java_interop_jnienv_call_static_long_method)}, {0x9256e59f11668fd9, "monodroid_fopen", reinterpret_cast(&monodroid_fopen)}, - {0x94ef4a1a70c00b42, "java_interop_jnienv_call_static_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_static_byte_method_a)}, - {0x95f0a8a6f04969c2, "java_interop_jnienv_delete_local_ref", reinterpret_cast(&java_interop_jnienv_delete_local_ref)}, - {0x9698c40c6f017a38, "java_interop_jnienv_call_nonvirtual_double_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_double_method_a)}, - {0x974c6c17b448be12, "java_interop_jnienv_call_nonvirtual_boolean_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_boolean_method)}, - {0x98164c4489286045, "java_interop_jnienv_call_float_method_a", reinterpret_cast(&java_interop_jnienv_call_float_method_a)}, {0x99280385171e42f7, "_monodroid_weak_gref_new", reinterpret_cast(&_monodroid_weak_gref_new)}, {0x99650880ac9e14a3, "send_uninterrupted", reinterpret_cast(&send_uninterrupted)}, - {0x99ec5fb4bed265e2, "java_interop_jnienv_new_int_array", reinterpret_cast(&java_interop_jnienv_new_int_array)}, - {0x9a068a886721dd95, "java_interop_jnienv_call_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_boolean_method_a)}, - {0x9a93c87037852993, "java_interop_jnienv_call_static_void_method", reinterpret_cast(&java_interop_jnienv_call_static_void_method)}, - {0x9ae63744afbe1583, "java_interop_jnienv_pop_local_frame", reinterpret_cast(&java_interop_jnienv_pop_local_frame)}, - {0x9b58050ba8a4ab05, "java_interop_jnienv_set_byte_array_region", reinterpret_cast(&java_interop_jnienv_set_byte_array_region)}, {0x9c8899c01b365588, "_monodroid_lref_log_new", reinterpret_cast(&_monodroid_lref_log_new)}, - {0x9df3b909de1a9e86, "java_interop_jnienv_define_class", reinterpret_cast(&java_interop_jnienv_define_class)}, - {0x9e1d58b0ef53edf6, "java_interop_jnienv_get_byte_array_elements", reinterpret_cast(&java_interop_jnienv_get_byte_array_elements)}, - {0x9eb010982a69aa1a, "java_interop_jnienv_new_weak_global_ref", reinterpret_cast(&java_interop_jnienv_new_weak_global_ref)}, - {0x9f5a73885df8dda2, "java_interop_jnienv_get_int_field", reinterpret_cast(&java_interop_jnienv_get_int_field)}, {0xa2b311d0ace698ff, "monodroid_clear_gdb_wait", reinterpret_cast(&monodroid_clear_gdb_wait)}, - {0xa2d53f1f1c2ee9c9, "java_interop_jnienv_call_nonvirtual_void_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_void_method)}, - {0xa4738f115f0167b8, "java_interop_jnienv_get_short_array_elements", reinterpret_cast(&java_interop_jnienv_get_short_array_elements)}, - {0xa5b7a5c87778795e, "java_interop_jnienv_get_byte_array_region", reinterpret_cast(&java_interop_jnienv_get_byte_array_region)}, - {0xa5d11bc74fad5f5d, "java_interop_jnienv_set_float_field", reinterpret_cast(&java_interop_jnienv_set_float_field)}, - {0xa63fb9b048b59d4d, "java_interop_jnienv_set_static_byte_field", reinterpret_cast(&java_interop_jnienv_set_static_byte_field)}, - {0xa9bf4f29b78ed742, "java_interop_jnienv_call_short_method_a", reinterpret_cast(&java_interop_jnienv_call_short_method_a)}, {0xab5d72a27d67b248, "monodroid_embedded_assemblies_set_assemblies_prefix", reinterpret_cast(&monodroid_embedded_assemblies_set_assemblies_prefix)}, - {0xadfd604636da7334, "java_interop_jnienv_call_nonvirtual_float_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_float_method)}, - {0xae410e98a8425782, "java_interop_jnienv_new_object_array", reinterpret_cast(&java_interop_jnienv_new_object_array)}, - {0xae8409cee9d95032, "java_interop_jnienv_get_boolean_array_region", reinterpret_cast(&java_interop_jnienv_get_boolean_array_region)}, - {0xaf730a515be8ab81, "java_interop_jnienv_call_static_long_method_a", reinterpret_cast(&java_interop_jnienv_call_static_long_method_a)}, - {0xb07ea0561e3dbe59, "java_interop_jnienv_call_nonvirtual_long_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_long_method)}, - {0xb326664f3dc86316, "java_interop_jnienv_set_short_field", reinterpret_cast(&java_interop_jnienv_set_short_field)}, - {0xb41a410ab17a3a73, "java_interop_jnienv_is_same_object", reinterpret_cast(&java_interop_jnienv_is_same_object)}, - {0xb5e54efc86b04e21, "java_interop_jnienv_release_string_chars", reinterpret_cast(&java_interop_jnienv_release_string_chars)}, - {0xb81e103dfd29eb97, "java_interop_jnienv_set_long_array_region", reinterpret_cast(&java_interop_jnienv_set_long_array_region)}, {0xb8b6638548d5aa08, "monodroid_strsplit", reinterpret_cast(&monodroid_strsplit)}, {0xb902428434fd0192, "monodroid_free", reinterpret_cast(&monodroid_free)}, {0xba09732e7f72fce4, "monodroid_dylib_mono_init", reinterpret_cast(&monodroid_dylib_mono_init)}, - {0xbcca2ef83c3c4071, "java_interop_jnienv_get_field_id", reinterpret_cast(&java_interop_jnienv_get_field_id)}, - {0xbe0b4e5703bc85cb, "java_interop_jnienv_get_long_array_region", reinterpret_cast(&java_interop_jnienv_get_long_array_region)}, - {0xbed2121edb2c4116, "java_interop_jnienv_exception_clear", reinterpret_cast(&java_interop_jnienv_exception_clear)}, - {0xbee3212280aa686b, "java_interop_jnienv_set_static_short_field", reinterpret_cast(&java_interop_jnienv_set_static_short_field)}, - {0xbf16a530ea5671e2, "java_interop_jnienv_set_static_long_field", reinterpret_cast(&java_interop_jnienv_set_static_long_field)}, - {0xc30244b7ad9e11f7, "java_interop_jnienv_get_static_field_id", reinterpret_cast(&java_interop_jnienv_get_static_field_id)}, - {0xc369a13a750703b6, "java_interop_jnienv_get_static_int_field", reinterpret_cast(&java_interop_jnienv_get_static_int_field)}, - {0xc3d950173773712f, "java_interop_jnienv_release_primitive_array_critical", reinterpret_cast(&java_interop_jnienv_release_primitive_array_critical)}, - {0xc4785b07242aaf2a, "java_interop_jnienv_ensure_local_capacity", reinterpret_cast(&java_interop_jnienv_ensure_local_capacity)}, - {0xc524742997864e06, "java_interop_jnienv_get_object_field", reinterpret_cast(&java_interop_jnienv_get_object_field)}, - {0xc5a7f5d8cc882956, "java_interop_jnienv_alloc_object", reinterpret_cast(&java_interop_jnienv_alloc_object)}, - {0xc6675fbc69de5e4b, "java_interop_jnienv_set_object_field", reinterpret_cast(&java_interop_jnienv_set_object_field)}, - {0xc7729a6119b35f76, "java_interop_jnienv_get_direct_buffer_address", reinterpret_cast(&java_interop_jnienv_get_direct_buffer_address)}, - {0xc95f2642de10d725, "java_interop_jnienv_call_nonvirtual_void_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_void_method_a)}, - {0xcbfbe869fa8e306c, "java_interop_jnienv_call_nonvirtual_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_boolean_method_a)}, {0xcc53b65d0162870e, "_monodroid_lookup_replacement_method_info", reinterpret_cast(&_monodroid_lookup_replacement_method_info)}, {0xcd339dc2d2132ef0, "set_world_accessable", reinterpret_cast(&set_world_accessable)}, - {0xcda6124c10309733, "java_interop_jnienv_set_boolean_array_region", reinterpret_cast(&java_interop_jnienv_set_boolean_array_region)}, - {0xcf6056a561f69fb0, "java_interop_jnienv_new_local_ref", reinterpret_cast(&java_interop_jnienv_new_local_ref)}, - {0xcfadd4626c2fa023, "java_interop_jnienv_set_short_array_region", reinterpret_cast(&java_interop_jnienv_set_short_array_region)}, - {0xd103743f4edf1a3b, "java_interop_jnienv_get_double_array_region", reinterpret_cast(&java_interop_jnienv_get_double_array_region)}, - {0xd18da50afab01a59, "java_interop_jnienv_call_nonvirtual_short_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_short_method_a)}, - {0xd1b62ff69efe261a, "java_interop_jnienv_find_class", reinterpret_cast(&java_interop_jnienv_find_class)}, {0xd2b102f6195d8f1a, "_monodroid_gref_log", reinterpret_cast(&_monodroid_gref_log)}, - {0xd45f0588b6e8e20d, "java_interop_jnienv_to_reflected_method", reinterpret_cast(&java_interop_jnienv_to_reflected_method)}, - {0xd78e23a41776e8dc, "java_interop_jnienv_set_static_object_field", reinterpret_cast(&java_interop_jnienv_set_static_object_field)}, - {0xd79e1566cf1bde84, "java_interop_jnienv_call_short_method", reinterpret_cast(&java_interop_jnienv_call_short_method)}, - {0xd83d41e5a47b1096, "java_interop_jnienv_call_static_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_static_boolean_method_a)}, - {0xd8ac269574f1d940, "java_interop_jnienv_release_long_array_elements", reinterpret_cast(&java_interop_jnienv_release_long_array_elements)}, {0xd9260a5735a3f840, "_monodroid_get_android_api_level", reinterpret_cast(&_monodroid_get_android_api_level)}, - {0xdb60ac70e0d48b01, "java_interop_jnienv_set_char_field", reinterpret_cast(&java_interop_jnienv_set_char_field)}, - {0xdc23220857c656f3, "java_interop_jnienv_set_byte_field", reinterpret_cast(&java_interop_jnienv_set_byte_field)}, - {0xdc3347e1ebaac83d, "java_interop_jnienv_get_double_array_elements", reinterpret_cast(&java_interop_jnienv_get_double_array_elements)}, - {0xdd832abc2d52d804, "java_interop_jnienv_call_static_byte_method", reinterpret_cast(&java_interop_jnienv_call_static_byte_method)}, - {0xdf0fc5cbc94603a7, "java_interop_jnienv_get_static_double_field", reinterpret_cast(&java_interop_jnienv_get_static_double_field)}, - {0xe029be85e60e013e, "java_interop_jnienv_release_byte_array_elements", reinterpret_cast(&java_interop_jnienv_release_byte_array_elements)}, {0xe3217082b569d851, "monodroid_dylib_mono_free", reinterpret_cast(&monodroid_dylib_mono_free)}, {0xe46673cc510111c1, "_monodroid_weak_gref_delete", reinterpret_cast(&_monodroid_weak_gref_delete)}, - {0xea6d002b49f8e37f, "java_interop_jnienv_set_static_int_field", reinterpret_cast(&java_interop_jnienv_set_static_int_field)}, - {0xeaadf4b6738a6f91, "java_interop_jnienv_release_boolean_array_elements", reinterpret_cast(&java_interop_jnienv_release_boolean_array_elements)}, - {0xec58cd055ad03a71, "java_interop_jnienv_get_float_array_elements", reinterpret_cast(&java_interop_jnienv_get_float_array_elements)}, - {0xec7a2e02caffbc40, "java_interop_jnienv_new_char_array", reinterpret_cast(&java_interop_jnienv_new_char_array)}, - {0xecfa095f97fc05a8, "java_interop_jnienv_set_char_array_region", reinterpret_cast(&java_interop_jnienv_set_char_array_region)}, {0xef89068b5179e092, "monodroid_get_log_categories", reinterpret_cast(&monodroid_get_log_categories)}, {0xefb64daaf899d919, "_monodroid_weak_gref_get", reinterpret_cast(&_monodroid_weak_gref_get)}, - {0xeff6ca91e3fa20e8, "java_interop_jnienv_call_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_byte_method_a)}, - {0xf13566fbdd56e96b, "java_interop_jnienv_set_int_array_region", reinterpret_cast(&java_interop_jnienv_set_int_array_region)}, - {0xf14a77bf7b1c8004, "java_interop_jnienv_set_static_boolean_field", reinterpret_cast(&java_interop_jnienv_set_static_boolean_field)}, {0xf31e2fa863630806, "monodroid_timing_stop", reinterpret_cast(&monodroid_timing_stop)}, - {0xf344487711fc9ae9, "java_interop_jnienv_get_method_id", reinterpret_cast(&java_interop_jnienv_get_method_id)}, {0xf514d458853281a2, "_monodroid_gref_get", reinterpret_cast(&_monodroid_gref_get)}, {0xf650837c0307b02b, "java_interop_strdup", reinterpret_cast(&java_interop_strdup)}, - {0xf6e55b11447d15dc, "java_interop_jnienv_release_char_array_elements", reinterpret_cast(&java_interop_jnienv_release_char_array_elements)}, - {0xf6ebcd9e94e84fcb, "java_interop_jnienv_get_static_object_field", reinterpret_cast(&java_interop_jnienv_get_static_object_field)}, - {0xf75e473e080e3535, "java_interop_jnienv_set_int_field", reinterpret_cast(&java_interop_jnienv_set_int_field)}, - {0xf8941a90ca280dd2, "java_interop_jnienv_call_long_method_a", reinterpret_cast(&java_interop_jnienv_call_long_method_a)}, - {0xfb0bebc703461da4, "java_interop_jnienv_get_short_field", reinterpret_cast(&java_interop_jnienv_get_short_field)}, - {0xfb147de47dcb27ce, "java_interop_jnienv_get_char_field", reinterpret_cast(&java_interop_jnienv_get_char_field)}, {0xfb177e4619f18dbe, "_monodroid_timezone_get_default_id", reinterpret_cast(&_monodroid_timezone_get_default_id)}, - {0xfb8b64a1e18f5242, "java_interop_jnienv_get_java_vm", reinterpret_cast(&java_interop_jnienv_get_java_vm)}, - {0xfc76c0c6cbc86784, "java_interop_jnienv_get_primitive_array_critical", reinterpret_cast(&java_interop_jnienv_get_primitive_array_critical)}, - {0xfd86c02b6b2d2a03, "java_interop_jnienv_new_long_array", reinterpret_cast(&java_interop_jnienv_new_long_array)}, - {0xfd94514c50251cb2, "java_interop_jnienv_call_static_float_method_a", reinterpret_cast(&java_interop_jnienv_call_static_float_method_a)}, - {0xff3dd9298b70e9bc, "java_interop_jnienv_call_static_int_method_a", reinterpret_cast(&java_interop_jnienv_call_static_int_method_a)}, }; //64-bit DotNet p/invoke table static PinvokeEntry dotnet_pinvokes[] = { @@ -688,242 +500,54 @@ constexpr hash_t system_security_cryptography_native_android_library_hash = 0x14 #else //32-bit internal p/invoke table static PinvokeEntry internal_pinvokes[] = { - {0x1e035ea, "java_interop_jnienv_get_string_chars", reinterpret_cast(&java_interop_jnienv_get_string_chars)}, - {0x777633c, "java_interop_jnienv_call_nonvirtual_int_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_int_method)}, - {0x82c4143, "java_interop_jnienv_call_void_method_a", reinterpret_cast(&java_interop_jnienv_call_void_method_a)}, - {0x9070d6c, "java_interop_jnienv_call_char_method_a", reinterpret_cast(&java_interop_jnienv_call_char_method_a)}, - {0xa7d048f, "java_interop_jnienv_get_object_field", reinterpret_cast(&java_interop_jnienv_get_object_field)}, - {0xa88f407, "java_interop_jnienv_call_long_method_a", reinterpret_cast(&java_interop_jnienv_call_long_method_a)}, {0xb7a486a, "monodroid_TypeManager_get_java_class_name", reinterpret_cast(&monodroid_TypeManager_get_java_class_name)}, - {0xb9ec0db, "java_interop_jnienv_exception_describe", reinterpret_cast(&java_interop_jnienv_exception_describe)}, - {0xc8e66e9, "java_interop_jnienv_get_byte_array_region", reinterpret_cast(&java_interop_jnienv_get_byte_array_region)}, - {0xd6829ec, "java_interop_jnienv_set_float_field", reinterpret_cast(&java_interop_jnienv_set_float_field)}, {0xf562bd9, "monodroid_embedded_assemblies_set_assemblies_prefix", reinterpret_cast(&monodroid_embedded_assemblies_set_assemblies_prefix)}, - {0x10466fa3, "java_interop_jnienv_get_float_array_region", reinterpret_cast(&java_interop_jnienv_get_float_array_region)}, - {0x107ca3a1, "java_interop_jnienv_call_nonvirtual_short_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_short_method)}, - {0x1297b061, "java_interop_jnienv_set_int_field", reinterpret_cast(&java_interop_jnienv_set_int_field)}, - {0x152d8fb8, "java_interop_jnienv_new_float_array", reinterpret_cast(&java_interop_jnienv_new_float_array)}, - {0x18d21cf9, "java_interop_jnienv_call_nonvirtual_object_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_object_method)}, - {0x1932a7b1, "java_interop_jnienv_call_static_char_method_a", reinterpret_cast(&java_interop_jnienv_call_static_char_method_a)}, - {0x1950fc4e, "java_interop_jnienv_find_class", reinterpret_cast(&java_interop_jnienv_find_class)}, - {0x19b82280, "java_interop_jnienv_get_char_array_region", reinterpret_cast(&java_interop_jnienv_get_char_array_region)}, - {0x1a21c2d3, "java_interop_jnienv_call_long_method", reinterpret_cast(&java_interop_jnienv_call_long_method)}, {0x1a8eab17, "_monodroid_get_identity_hash_code", reinterpret_cast(&_monodroid_get_identity_hash_code)}, - {0x1d49ce13, "java_interop_jnienv_get_boolean_array_region", reinterpret_cast(&java_interop_jnienv_get_boolean_array_region)}, - {0x1f84864e, "java_interop_jnienv_new_global_ref", reinterpret_cast(&java_interop_jnienv_new_global_ref)}, - {0x2053ff50, "java_interop_jnienv_release_char_array_elements", reinterpret_cast(&java_interop_jnienv_release_char_array_elements)}, - {0x21bfab9d, "java_interop_jnienv_call_static_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_static_boolean_method_a)}, - {0x22062f9c, "java_interop_jnienv_call_float_method", reinterpret_cast(&java_interop_jnienv_call_float_method)}, {0x227a2636, "monodroid_get_namespaced_system_property", reinterpret_cast(&monodroid_get_namespaced_system_property)}, - {0x24235f0c, "java_interop_jnienv_get_double_array_region", reinterpret_cast(&java_interop_jnienv_get_double_array_region)}, - {0x251c6fae, "java_interop_jnienv_release_short_array_elements", reinterpret_cast(&java_interop_jnienv_release_short_array_elements)}, - {0x277a9fd9, "java_interop_jnienv_get_static_boolean_field", reinterpret_cast(&java_interop_jnienv_get_static_boolean_field)}, - {0x28571fda, "java_interop_jnienv_call_nonvirtual_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_byte_method_a)}, {0x2a0e1744, "java_interop_strdup", reinterpret_cast(&java_interop_strdup)}, - {0x2a8eb1e9, "java_interop_jnienv_new_local_ref", reinterpret_cast(&java_interop_jnienv_new_local_ref)}, {0x2aea7c33, "_monodroid_max_gref_get", reinterpret_cast(&_monodroid_max_gref_get)}, - {0x2c1c03ab, "java_interop_jnienv_call_boolean_method", reinterpret_cast(&java_interop_jnienv_call_boolean_method)}, - {0x2dd80e0d, "java_interop_jnienv_set_object_field", reinterpret_cast(&java_interop_jnienv_set_object_field)}, - {0x2f2ee86c, "java_interop_jnienv_release_primitive_array_critical", reinterpret_cast(&java_interop_jnienv_release_primitive_array_critical)}, {0x2f7d0f53, "_monodroid_get_android_api_level", reinterpret_cast(&_monodroid_get_android_api_level)}, - {0x30296fff, "java_interop_jnienv_new_weak_global_ref", reinterpret_cast(&java_interop_jnienv_new_weak_global_ref)}, - {0x3049c929, "java_interop_jnienv_call_static_void_method_a", reinterpret_cast(&java_interop_jnienv_call_static_void_method_a)}, {0x30b9487b, "_monodroid_get_dns_servers", reinterpret_cast(&_monodroid_get_dns_servers)}, {0x3227d81a, "monodroid_timing_start", reinterpret_cast(&monodroid_timing_start)}, {0x333d4835, "_monodroid_lookup_replacement_method_info", reinterpret_cast(&_monodroid_lookup_replacement_method_info)}, - {0x36871cbc, "java_interop_jnienv_set_static_object_field", reinterpret_cast(&java_interop_jnienv_set_static_object_field)}, - {0x369fbea2, "java_interop_jnienv_new_direct_byte_buffer", reinterpret_cast(&java_interop_jnienv_new_direct_byte_buffer)}, - {0x36b25efd, "java_interop_jnienv_get_object_class", reinterpret_cast(&java_interop_jnienv_get_object_class)}, - {0x3933f085, "java_interop_jnienv_release_float_array_elements", reinterpret_cast(&java_interop_jnienv_release_float_array_elements)}, - {0x3952b875, "java_interop_jnienv_delete_local_ref", reinterpret_cast(&java_interop_jnienv_delete_local_ref)}, {0x395808e5, "monodroid_dylib_mono_free", reinterpret_cast(&monodroid_dylib_mono_free)}, - {0x3a1fdc2d, "java_interop_jnienv_get_string_length", reinterpret_cast(&java_interop_jnienv_get_string_length)}, - {0x3a4007dd, "java_interop_jnienv_get_array_length", reinterpret_cast(&java_interop_jnienv_get_array_length)}, - {0x3c5680a9, "java_interop_jnienv_set_char_array_region", reinterpret_cast(&java_interop_jnienv_set_char_array_region)}, - {0x3f28250f, "java_interop_jnienv_call_nonvirtual_void_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_void_method)}, - {0x404c866e, "java_interop_jnienv_get_short_field", reinterpret_cast(&java_interop_jnienv_get_short_field)}, - {0x40b598e2, "java_interop_jnienv_call_static_float_method", reinterpret_cast(&java_interop_jnienv_call_static_float_method)}, - {0x40e9f1c9, "java_interop_jnienv_call_byte_method", reinterpret_cast(&java_interop_jnienv_call_byte_method)}, - {0x420d14dc, "java_interop_jnienv_call_static_long_method", reinterpret_cast(&java_interop_jnienv_call_static_long_method)}, {0x42b41fe4, "send_uninterrupted", reinterpret_cast(&send_uninterrupted)}, - {0x42e8c547, "java_interop_jnienv_get_static_byte_field", reinterpret_cast(&java_interop_jnienv_get_static_byte_field)}, {0x434ad3e4, "_monodroid_getifaddrs", reinterpret_cast(&_monodroid_getifaddrs)}, - {0x44b27fe3, "java_interop_jnienv_get_static_float_field", reinterpret_cast(&java_interop_jnienv_get_static_float_field)}, - {0x44e1bdb0, "java_interop_jnienv_get_short_array_region", reinterpret_cast(&java_interop_jnienv_get_short_array_region)}, - {0x47ee7712, "java_interop_jnienv_set_boolean_field", reinterpret_cast(&java_interop_jnienv_set_boolean_field)}, - {0x491890d8, "java_interop_jnienv_call_static_double_method_a", reinterpret_cast(&java_interop_jnienv_call_static_double_method_a)}, {0x4b58e0da, "monodroid_get_dylib", reinterpret_cast(&monodroid_get_dylib)}, - {0x4df2a871, "java_interop_jnienv_release_boolean_array_elements", reinterpret_cast(&java_interop_jnienv_release_boolean_array_elements)}, - {0x4f94ae6a, "java_interop_jnienv_get_static_short_field", reinterpret_cast(&java_interop_jnienv_get_static_short_field)}, - {0x501318ed, "java_interop_jnienv_set_long_field", reinterpret_cast(&java_interop_jnienv_set_long_field)}, {0x501befde, "monodroid_clear_gdb_wait", reinterpret_cast(&monodroid_clear_gdb_wait)}, {0x501ebdc2, "monodroid_dylib_mono_init", reinterpret_cast(&monodroid_dylib_mono_init)}, - {0x51e30f46, "java_interop_jnienv_set_int_array_region", reinterpret_cast(&java_interop_jnienv_set_int_array_region)}, - {0x528fe356, "java_interop_jnienv_new_object", reinterpret_cast(&java_interop_jnienv_new_object)}, - {0x5373562d, "java_interop_jnienv_new_boolean_array", reinterpret_cast(&java_interop_jnienv_new_boolean_array)}, - {0x543e15a2, "java_interop_jnienv_release_string_chars", reinterpret_cast(&java_interop_jnienv_release_string_chars)}, - {0x56902ea2, "java_interop_jnienv_call_object_method", reinterpret_cast(&java_interop_jnienv_call_object_method)}, - {0x58628f6b, "java_interop_jnienv_get_object_ref_type", reinterpret_cast(&java_interop_jnienv_get_object_ref_type)}, - {0x5aa55081, "java_interop_jnienv_get_static_int_field", reinterpret_cast(&java_interop_jnienv_get_static_int_field)}, - {0x5b820c0b, "java_interop_jnienv_delete_global_ref", reinterpret_cast(&java_interop_jnienv_delete_global_ref)}, - {0x5ec2f015, "java_interop_jnienv_exception_check", reinterpret_cast(&java_interop_jnienv_exception_check)}, - {0x5efa35fa, "java_interop_jnienv_set_static_short_field", reinterpret_cast(&java_interop_jnienv_set_static_short_field)}, - {0x627132ed, "java_interop_jnienv_set_long_array_region", reinterpret_cast(&java_interop_jnienv_set_long_array_region)}, - {0x62accb63, "java_interop_jnienv_get_boolean_array_elements", reinterpret_cast(&java_interop_jnienv_get_boolean_array_elements)}, - {0x643e30fe, "java_interop_jnienv_call_static_long_method_a", reinterpret_cast(&java_interop_jnienv_call_static_long_method_a)}, - {0x65f76c15, "java_interop_jnienv_get_short_array_elements", reinterpret_cast(&java_interop_jnienv_get_short_array_elements)}, - {0x66674b2e, "java_interop_jnienv_get_field_id", reinterpret_cast(&java_interop_jnienv_get_field_id)}, - {0x68a8441a, "java_interop_jnienv_set_object_array_element", reinterpret_cast(&java_interop_jnienv_set_object_array_element)}, - {0x68c8ea73, "java_interop_jnienv_set_boolean_array_region", reinterpret_cast(&java_interop_jnienv_set_boolean_array_region)}, - {0x6a5924cc, "java_interop_jnienv_delete_weak_global_ref", reinterpret_cast(&java_interop_jnienv_delete_weak_global_ref)}, - {0x6c2c499b, "java_interop_jnienv_monitor_exit", reinterpret_cast(&java_interop_jnienv_monitor_exit)}, - {0x6c88dcdd, "java_interop_jnienv_set_short_field", reinterpret_cast(&java_interop_jnienv_set_short_field)}, - {0x6d38753e, "java_interop_jnienv_call_static_object_method", reinterpret_cast(&java_interop_jnienv_call_static_object_method)}, - {0x6e2c1c8a, "java_interop_jnienv_call_nonvirtual_double_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_double_method)}, - {0x6e7bf9fd, "java_interop_jnienv_call_char_method", reinterpret_cast(&java_interop_jnienv_call_char_method)}, - {0x6f4a97fd, "java_interop_jnienv_call_nonvirtual_object_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_object_method_a)}, - {0x7103e620, "java_interop_jnienv_get_long_field", reinterpret_cast(&java_interop_jnienv_get_long_field)}, - {0x74dd4d3a, "java_interop_jnienv_get_byte_field", reinterpret_cast(&java_interop_jnienv_get_byte_field)}, - {0x751efa90, "java_interop_jnienv_call_nonvirtual_int_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_int_method_a)}, {0x7a6909a0, "_monodroid_counters_dump", reinterpret_cast(&_monodroid_counters_dump)}, - {0x7b3aeca7, "java_interop_jnienv_call_static_short_method", reinterpret_cast(&java_interop_jnienv_call_static_short_method)}, {0x7c94dbf5, "monodroid_fopen", reinterpret_cast(&monodroid_fopen)}, - {0x7ceb27c8, "java_interop_jnienv_set_char_field", reinterpret_cast(&java_interop_jnienv_set_char_field)}, - {0x7fa5420d, "java_interop_jnienv_set_byte_array_region", reinterpret_cast(&java_interop_jnienv_set_byte_array_region)}, - {0x82361a25, "java_interop_jnienv_call_nonvirtual_float_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_float_method)}, - {0x83ed90f4, "java_interop_jnienv_get_double_field", reinterpret_cast(&java_interop_jnienv_get_double_field)}, - {0x84b2f556, "java_interop_jnienv_get_version", reinterpret_cast(&java_interop_jnienv_get_version)}, - {0x877cd0a1, "java_interop_jnienv_exception_occurred", reinterpret_cast(&java_interop_jnienv_exception_occurred)}, - {0x89214a47, "java_interop_jnienv_alloc_object", reinterpret_cast(&java_interop_jnienv_alloc_object)}, - {0x8974acb7, "java_interop_jnienv_call_double_method_a", reinterpret_cast(&java_interop_jnienv_call_double_method_a)}, - {0x8a4eea67, "java_interop_jnienv_call_static_int_method", reinterpret_cast(&java_interop_jnienv_call_static_int_method)}, - {0x8af877d0, "java_interop_jnienv_get_object_array_element", reinterpret_cast(&java_interop_jnienv_get_object_array_element)}, - {0x8b37c21e, "java_interop_jnienv_call_static_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_static_byte_method_a)}, - {0x8bd1146c, "java_interop_jnienv_new_char_array", reinterpret_cast(&java_interop_jnienv_new_char_array)}, - {0x8bf11b66, "java_interop_jnienv_new_byte_array", reinterpret_cast(&java_interop_jnienv_new_byte_array)}, - {0x8c769d9c, "java_interop_jnienv_call_static_char_method", reinterpret_cast(&java_interop_jnienv_call_static_char_method)}, - {0x8e3317cf, "java_interop_jnienv_set_static_byte_field", reinterpret_cast(&java_interop_jnienv_set_static_byte_field)}, - {0x8e5511af, "java_interop_jnienv_get_int_array_region", reinterpret_cast(&java_interop_jnienv_get_int_array_region)}, - {0x8e6f4cb5, "java_interop_jnienv_pop_local_frame", reinterpret_cast(&java_interop_jnienv_pop_local_frame)}, - {0x8eb4fec5, "java_interop_jnienv_get_long_array_region", reinterpret_cast(&java_interop_jnienv_get_long_array_region)}, {0x8f6837ec, "monodroid_strdup_printf", reinterpret_cast(&monodroid_strdup_printf)}, - {0x8fc7477b, "java_interop_jnienv_call_static_double_method", reinterpret_cast(&java_interop_jnienv_call_static_double_method)}, {0x9070e02c, "_monodroid_lref_log_delete", reinterpret_cast(&_monodroid_lref_log_delete)}, {0x910452d0, "monodroid_timing_stop", reinterpret_cast(&monodroid_timing_stop)}, - {0x918976ce, "java_interop_jnienv_call_nonvirtual_boolean_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_boolean_method)}, - {0x919d9ed2, "java_interop_jnienv_call_static_float_method_a", reinterpret_cast(&java_interop_jnienv_call_static_float_method_a)}, - {0x9205e017, "java_interop_jnienv_unregister_natives", reinterpret_cast(&java_interop_jnienv_unregister_natives)}, - {0x925f2972, "java_interop_jnienv_new_short_array", reinterpret_cast(&java_interop_jnienv_new_short_array)}, - {0x93118264, "java_interop_jnienv_get_char_field", reinterpret_cast(&java_interop_jnienv_get_char_field)}, {0x934790b1, "monodroid_strsplit", reinterpret_cast(&monodroid_strsplit)}, - {0x937603da, "java_interop_jnienv_set_static_int_field", reinterpret_cast(&java_interop_jnienv_set_static_int_field)}, - {0x940d8730, "java_interop_jnienv_get_java_vm", reinterpret_cast(&java_interop_jnienv_get_java_vm)}, - {0x942abdd7, "java_interop_jnienv_call_static_byte_method", reinterpret_cast(&java_interop_jnienv_call_static_byte_method)}, - {0x94926e48, "java_interop_jnienv_get_double_array_elements", reinterpret_cast(&java_interop_jnienv_get_double_array_elements)}, - {0x94e61161, "java_interop_jnienv_set_static_char_field", reinterpret_cast(&java_interop_jnienv_set_static_char_field)}, - {0x97d001bd, "java_interop_jnienv_call_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_boolean_method_a)}, - {0x980fd34b, "java_interop_jnienv_set_static_long_field", reinterpret_cast(&java_interop_jnienv_set_static_long_field)}, - {0x98be3ae8, "java_interop_jnienv_to_reflected_field", reinterpret_cast(&java_interop_jnienv_to_reflected_field)}, {0x9a734f16, "_monodroid_weak_gref_get", reinterpret_cast(&_monodroid_weak_gref_get)}, {0x9b7b9290, "monodroid_get_system_property", reinterpret_cast(&monodroid_get_system_property)}, - {0x9bbd23a5, "java_interop_jnienv_new_double_array", reinterpret_cast(&java_interop_jnienv_new_double_array)}, - {0x9c236f55, "java_interop_jnienv_call_object_method_a", reinterpret_cast(&java_interop_jnienv_call_object_method_a)}, {0x9c5b24a8, "_monodroid_weak_gref_new", reinterpret_cast(&_monodroid_weak_gref_new)}, - {0x9d45c4a4, "java_interop_jnienv_call_static_int_method_a", reinterpret_cast(&java_interop_jnienv_call_static_int_method_a)}, - {0xa0015b66, "java_interop_jnienv_set_static_boolean_field", reinterpret_cast(&java_interop_jnienv_set_static_boolean_field)}, {0xa04e5d1c, "monodroid_free", reinterpret_cast(&monodroid_free)}, {0xa11d71da, "monodroid_strfreev", reinterpret_cast(&monodroid_strfreev)}, - {0xa2239fee, "java_interop_jnienv_call_nonvirtual_void_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_void_method_a)}, - {0xa3b03370, "java_interop_jnienv_call_static_boolean_method", reinterpret_cast(&java_interop_jnienv_call_static_boolean_method)}, - {0xa4390bae, "java_interop_jnienv_call_nonvirtual_float_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_float_method_a)}, - {0xa575fe55, "java_interop_jnienv_call_byte_method_a", reinterpret_cast(&java_interop_jnienv_call_byte_method_a)}, - {0xa626e316, "java_interop_jnienv_is_assignable_from", reinterpret_cast(&java_interop_jnienv_is_assignable_from)}, - {0xa6d249ee, "java_interop_jnienv_release_byte_array_elements", reinterpret_cast(&java_interop_jnienv_release_byte_array_elements)}, - {0xa6dc25ff, "java_interop_jnienv_new_object_array", reinterpret_cast(&java_interop_jnienv_new_object_array)}, {0xa7ea4a5f, "path_combine", reinterpret_cast(&path_combine)}, - {0xa809c7a3, "java_interop_jnienv_get_static_double_field", reinterpret_cast(&java_interop_jnienv_get_static_double_field)}, - {0xa8cd8b0c, "java_interop_jnienv_throw", reinterpret_cast(&java_interop_jnienv_throw)}, - {0xa8ed24d5, "java_interop_jnienv_monitor_enter", reinterpret_cast(&java_interop_jnienv_monitor_enter)}, - {0xa9a59a06, "java_interop_jnienv_call_static_short_method_a", reinterpret_cast(&java_interop_jnienv_call_static_short_method_a)}, - {0xaa55a4cc, "java_interop_jnienv_get_char_array_elements", reinterpret_cast(&java_interop_jnienv_get_char_array_elements)}, - {0xaba9e63c, "java_interop_jnienv_new_object_a", reinterpret_cast(&java_interop_jnienv_new_object_a)}, {0xad511c82, "_monodroid_timezone_get_default_id", reinterpret_cast(&_monodroid_timezone_get_default_id)}, - {0xad663015, "java_interop_jnienv_get_byte_array_elements", reinterpret_cast(&java_interop_jnienv_get_byte_array_elements)}, {0xb02468aa, "_monodroid_gref_get", reinterpret_cast(&_monodroid_gref_get)}, - {0xb068b806, "java_interop_jnienv_get_float_field", reinterpret_cast(&java_interop_jnienv_get_float_field)}, - {0xb0d632bb, "java_interop_jnienv_fatal_error", reinterpret_cast(&java_interop_jnienv_fatal_error)}, - {0xb1711bcd, "java_interop_jnienv_call_float_method_a", reinterpret_cast(&java_interop_jnienv_call_float_method_a)}, - {0xb4094ed4, "java_interop_jnienv_exception_clear", reinterpret_cast(&java_interop_jnienv_exception_clear)}, - {0xb46744b4, "java_interop_jnienv_call_nonvirtual_long_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_long_method)}, - {0xb539d850, "java_interop_jnienv_call_static_object_method_a", reinterpret_cast(&java_interop_jnienv_call_static_object_method_a)}, - {0xb6ed7a4f, "java_interop_jnienv_release_double_array_elements", reinterpret_cast(&java_interop_jnienv_release_double_array_elements)}, - {0xb77fd2dd, "java_interop_jnienv_get_float_array_elements", reinterpret_cast(&java_interop_jnienv_get_float_array_elements)}, - {0xb811cfa3, "java_interop_jnienv_call_nonvirtual_char_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_char_method)}, - {0xbb7105c3, "java_interop_jnienv_call_nonvirtual_char_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_char_method_a)}, - {0xbcca7f96, "java_interop_jnienv_get_static_method_id", reinterpret_cast(&java_interop_jnienv_get_static_method_id)}, - {0xbdae4a81, "java_interop_jnienv_new_int_array", reinterpret_cast(&java_interop_jnienv_new_int_array)}, {0xbe8d7701, "_monodroid_gref_log_new", reinterpret_cast(&_monodroid_gref_log_new)}, {0xc0d097a7, "_monodroid_lref_log_new", reinterpret_cast(&_monodroid_lref_log_new)}, - {0xc1c45b98, "java_interop_jnienv_call_double_method", reinterpret_cast(&java_interop_jnienv_call_double_method)}, - {0xc2aa2901, "java_interop_jnienv_call_nonvirtual_byte_method", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_byte_method)}, - {0xc3045082, "java_interop_jnienv_get_static_object_field", reinterpret_cast(&java_interop_jnienv_get_static_object_field)}, - {0xc30e7353, "java_interop_jnienv_release_int_array_elements", reinterpret_cast(&java_interop_jnienv_release_int_array_elements)}, - {0xc40138c3, "java_interop_jnienv_get_primitive_array_critical", reinterpret_cast(&java_interop_jnienv_get_primitive_array_critical)}, - {0xc4053527, "java_interop_jnienv_call_nonvirtual_boolean_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_boolean_method_a)}, {0xc439b5d7, "_monodroid_lookup_replacement_type", reinterpret_cast(&_monodroid_lookup_replacement_type)}, {0xc5146c54, "_monodroid_gref_log_delete", reinterpret_cast(&_monodroid_gref_log_delete)}, {0xc58eafa5, "java_interop_free", reinterpret_cast(&java_interop_free)}, {0xc6c99d41, "monodroid_store_package_name", reinterpret_cast(&monodroid_store_package_name)}, - {0xca8d9faf, "java_interop_jnienv_throw_new", reinterpret_cast(&java_interop_jnienv_throw_new)}, - {0xcbf4677e, "java_interop_jnienv_call_short_method", reinterpret_cast(&java_interop_jnienv_call_short_method)}, - {0xcd79e501, "java_interop_jnienv_set_float_array_region", reinterpret_cast(&java_interop_jnienv_set_float_array_region)}, - {0xcf44e2c0, "java_interop_jnienv_push_local_frame", reinterpret_cast(&java_interop_jnienv_push_local_frame)}, - {0xd08df915, "java_interop_jnienv_release_long_array_elements", reinterpret_cast(&java_interop_jnienv_release_long_array_elements)}, {0xd3b5d2c1, "_monodroid_freeifaddrs", reinterpret_cast(&_monodroid_freeifaddrs)}, - {0xd6e17fa8, "java_interop_jnienv_get_long_array_elements", reinterpret_cast(&java_interop_jnienv_get_long_array_elements)}, {0xd78c749d, "monodroid_get_log_categories", reinterpret_cast(&monodroid_get_log_categories)}, - {0xd84f990a, "java_interop_jnienv_get_int_array_elements", reinterpret_cast(&java_interop_jnienv_get_int_array_elements)}, - {0xd8bbe6d5, "java_interop_jnienv_ensure_local_capacity", reinterpret_cast(&java_interop_jnienv_ensure_local_capacity)}, {0xd91f3619, "create_public_directory", reinterpret_cast(&create_public_directory)}, - {0xd993d1b6, "java_interop_jnienv_is_instance_of", reinterpret_cast(&java_interop_jnienv_is_instance_of)}, - {0xd9ae215c, "java_interop_jnienv_set_double_field", reinterpret_cast(&java_interop_jnienv_set_double_field)}, - {0xdafeab24, "java_interop_jnienv_set_byte_field", reinterpret_cast(&java_interop_jnienv_set_byte_field)}, - {0xde1b27c1, "java_interop_jnienv_get_direct_buffer_capacity", reinterpret_cast(&java_interop_jnienv_get_direct_buffer_capacity)}, - {0xded15d19, "java_interop_jnienv_get_direct_buffer_address", reinterpret_cast(&java_interop_jnienv_get_direct_buffer_address)}, - {0xdf0668e8, "java_interop_jnienv_get_int_field", reinterpret_cast(&java_interop_jnienv_get_int_field)}, {0xe215a17c, "_monodroid_weak_gref_delete", reinterpret_cast(&_monodroid_weak_gref_delete)}, - {0xe2434b6d, "java_interop_jnienv_set_static_double_field", reinterpret_cast(&java_interop_jnienv_set_static_double_field)}, - {0xe3f8dcd5, "java_interop_jnienv_set_short_array_region", reinterpret_cast(&java_interop_jnienv_set_short_array_region)}, {0xe7e77ca5, "_monodroid_gref_log", reinterpret_cast(&_monodroid_gref_log)}, {0xea2184e3, "_monodroid_gc_wait_for_bridge_processing", reinterpret_cast(&_monodroid_gc_wait_for_bridge_processing)}, - {0xeac6aa37, "java_interop_jnienv_call_static_void_method", reinterpret_cast(&java_interop_jnienv_call_static_void_method)}, - {0xeb65e7de, "java_interop_jnienv_get_superclass", reinterpret_cast(&java_interop_jnienv_get_superclass)}, - {0xec5eea41, "java_interop_jnienv_is_same_object", reinterpret_cast(&java_interop_jnienv_is_same_object)}, - {0xed08792b, "java_interop_jnienv_call_nonvirtual_double_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_double_method_a)}, - {0xedcca496, "java_interop_jnienv_get_static_field_id", reinterpret_cast(&java_interop_jnienv_get_static_field_id)}, - {0xf2442775, "java_interop_jnienv_get_method_id", reinterpret_cast(&java_interop_jnienv_get_method_id)}, - {0xf2bd3567, "java_interop_jnienv_define_class", reinterpret_cast(&java_interop_jnienv_define_class)}, - {0xf354b893, "java_interop_jnienv_call_short_method_a", reinterpret_cast(&java_interop_jnienv_call_short_method_a)}, - {0xf385b573, "java_interop_jnienv_to_reflected_method", reinterpret_cast(&java_interop_jnienv_to_reflected_method)}, {0xf4079b4a, "monodroid_dylib_mono_new", reinterpret_cast(&monodroid_dylib_mono_new)}, - {0xf41aedbb, "java_interop_jnienv_get_static_char_field", reinterpret_cast(&java_interop_jnienv_get_static_char_field)}, - {0xf58d0027, "java_interop_jnienv_new_string", reinterpret_cast(&java_interop_jnienv_new_string)}, {0xf5a0ac55, "set_world_accessable", reinterpret_cast(&set_world_accessable)}, {0xf61941c3, "recv_uninterrupted", reinterpret_cast(&recv_uninterrupted)}, {0xf6ca4b3b, "_monodroid_get_network_interface_supports_multicast", reinterpret_cast(&_monodroid_get_network_interface_supports_multicast)}, - {0xf99656a1, "java_interop_jnienv_get_static_long_field", reinterpret_cast(&java_interop_jnienv_get_static_long_field)}, {0xfa1832a6, "_monodroid_detect_cpu_and_architecture", reinterpret_cast(&_monodroid_detect_cpu_and_architecture)}, - {0xfa1a1e62, "java_interop_jnienv_call_int_method_a", reinterpret_cast(&java_interop_jnienv_call_int_method_a)}, {0xfa4e32ca, "monodroid_log", reinterpret_cast(&monodroid_log)}, - {0xfa72c314, "java_interop_jnienv_new_long_array", reinterpret_cast(&java_interop_jnienv_new_long_array)}, - {0xfb55407b, "java_interop_jnienv_call_nonvirtual_short_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_short_method_a)}, - {0xfba65be0, "java_interop_jnienv_get_boolean_field", reinterpret_cast(&java_interop_jnienv_get_boolean_field)}, - {0xfbc10e54, "java_interop_jnienv_call_int_method", reinterpret_cast(&java_interop_jnienv_call_int_method)}, - {0xfbe15def, "java_interop_jnienv_set_static_float_field", reinterpret_cast(&java_interop_jnienv_set_static_float_field)}, - {0xfbefb815, "java_interop_jnienv_set_double_array_region", reinterpret_cast(&java_interop_jnienv_set_double_array_region)}, - {0xfc02ddba, "java_interop_jnienv_call_nonvirtual_long_method_a", reinterpret_cast(&java_interop_jnienv_call_nonvirtual_long_method_a)}, - {0xfc931d36, "java_interop_jnienv_call_void_method", reinterpret_cast(&java_interop_jnienv_call_void_method)}, - {0xfdb1693e, "java_interop_jnienv_register_natives", reinterpret_cast(&java_interop_jnienv_register_natives)}, {0xfdc3ae2a, "_monodroid_get_network_interface_up_state", reinterpret_cast(&_monodroid_get_network_interface_up_state)}, }; //32-bit DotNet p/invoke table @@ -1365,5 +989,5 @@ constexpr hash_t system_io_compression_native_library_hash = 0xafe3142c; constexpr hash_t system_security_cryptography_native_android_library_hash = 0x93625cd; #endif -constexpr size_t internal_pinvokes_count = 237; +constexpr size_t internal_pinvokes_count = 49; constexpr size_t dotnet_pinvokes_count = 428; diff --git a/tests/Mono.Android-Tests/Java.Interop-Tests/Java.InteropTests/JavaInterop_Tests_Reference.cs b/tests/Mono.Android-Tests/Java.Interop-Tests/Java.InteropTests/JavaInterop_Tests_Reference.cs index e0a898e5cd8..5a6b25f62cf 100644 --- a/tests/Mono.Android-Tests/Java.Interop-Tests/Java.InteropTests/JavaInterop_Tests_Reference.cs +++ b/tests/Mono.Android-Tests/Java.Interop-Tests/Java.InteropTests/JavaInterop_Tests_Reference.cs @@ -1,3 +1,5 @@ +global using JNIEnv = global::Android.Runtime.JNIEnv; + using System; namespace Java.InteropTests