| // Autogenerated file. Do not edit. |
| // Generated from an annotated version of jni.h provided in Android NDK. |
| // (NDK Version 23.1.7779620) |
| // The license for original file is provided below: |
| |
| /* |
| * Copyright (C) 2006 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| /* |
| * JNI specification, as defined by Sun: |
| * http://java.sun.com/javase/6/docs/technotes/guides/jni/spec/jniTOC.html |
| * |
| * Everything here is expected to be VM-neutral. |
| */ |
| |
| // ignore_for_file: always_specify_types |
| // ignore_for_file: camel_case_types |
| // ignore_for_file: non_constant_identifier_names |
| // ignore_for_file: constant_identifier_names |
| // ignore_for_file: unused_field |
| // ignore_for_file: unused_element |
| // coverage:ignore-file |
| |
| // AUTO GENERATED FILE, DO NOT EDIT. |
| // |
| // Generated by `package:ffigen`. |
| import 'dart:ffi' as ffi; |
| |
| /// Bindings for libdartjni.so which is part of jni plugin. |
| /// |
| /// It also transitively includes type definitions such as JNIEnv from third_party/jni.h; |
| /// |
| /// However, functions prefixed JNI_ are not usable because they are in a different shared library. |
| /// |
| /// Regenerate bindings with `flutter pub run ffigen.dart --config ffigen.yaml`. |
| /// |
| class JniBindings { |
| /// Holds the symbol lookup function. |
| final ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName) |
| _lookup; |
| |
| /// The symbols are looked up in [dynamicLibrary]. |
| JniBindings(ffi.DynamicLibrary dynamicLibrary) |
| : _lookup = dynamicLibrary.lookup; |
| |
| /// The symbols are looked up with [lookup]. |
| JniBindings.fromLookup( |
| ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName) |
| lookup) |
| : _lookup = lookup; |
| |
| ffi.Pointer<JniAccessors> GetAccessors() { |
| return _GetAccessors(); |
| } |
| |
| late final _GetAccessorsPtr = |
| _lookup<ffi.NativeFunction<ffi.Pointer<JniAccessors> Function()>>( |
| 'GetAccessors'); |
| late final _GetAccessors = |
| _GetAccessorsPtr.asFunction<ffi.Pointer<JniAccessors> Function()>(); |
| |
| ffi.Pointer<JavaVM> GetJavaVM() { |
| return _GetJavaVM(); |
| } |
| |
| late final _GetJavaVMPtr = |
| _lookup<ffi.NativeFunction<ffi.Pointer<JavaVM> Function()>>('GetJavaVM'); |
| late final _GetJavaVM = |
| _GetJavaVMPtr.asFunction<ffi.Pointer<JavaVM> Function()>(); |
| |
| ffi.Pointer<JniEnv> GetJniEnv() { |
| return _GetJniEnv(); |
| } |
| |
| late final _GetJniEnvPtr = |
| _lookup<ffi.NativeFunction<ffi.Pointer<JniEnv> Function()>>('GetJniEnv'); |
| late final _GetJniEnv = |
| _GetJniEnvPtr.asFunction<ffi.Pointer<JniEnv> Function()>(); |
| |
| ffi.Pointer<JniEnv> SpawnJvm( |
| ffi.Pointer<JavaVMInitArgs> args, |
| ) { |
| return _SpawnJvm( |
| args, |
| ); |
| } |
| |
| late final _SpawnJvmPtr = _lookup< |
| ffi.NativeFunction< |
| ffi.Pointer<JniEnv> Function( |
| ffi.Pointer<JavaVMInitArgs>)>>('SpawnJvm'); |
| late final _SpawnJvm = _SpawnJvmPtr.asFunction< |
| ffi.Pointer<JniEnv> Function(ffi.Pointer<JavaVMInitArgs>)>(); |
| |
| JClassPtr LoadClass( |
| ffi.Pointer<ffi.Char> name, |
| ) { |
| return _LoadClass( |
| name, |
| ); |
| } |
| |
| late final _LoadClassPtr = |
| _lookup<ffi.NativeFunction<JClassPtr Function(ffi.Pointer<ffi.Char>)>>( |
| 'LoadClass'); |
| late final _LoadClass = |
| _LoadClassPtr.asFunction<JClassPtr Function(ffi.Pointer<ffi.Char>)>(); |
| |
| JObjectPtr GetClassLoader() { |
| return _GetClassLoader(); |
| } |
| |
| late final _GetClassLoaderPtr = |
| _lookup<ffi.NativeFunction<JObjectPtr Function()>>('GetClassLoader'); |
| late final _GetClassLoader = |
| _GetClassLoaderPtr.asFunction<JObjectPtr Function()>(); |
| |
| JObjectPtr GetApplicationContext() { |
| return _GetApplicationContext(); |
| } |
| |
| late final _GetApplicationContextPtr = |
| _lookup<ffi.NativeFunction<JObjectPtr Function()>>( |
| 'GetApplicationContext'); |
| late final _GetApplicationContext = |
| _GetApplicationContextPtr.asFunction<JObjectPtr Function()>(); |
| |
| JObjectPtr GetCurrentActivity() { |
| return _GetCurrentActivity(); |
| } |
| |
| late final _GetCurrentActivityPtr = |
| _lookup<ffi.NativeFunction<JObjectPtr Function()>>('GetCurrentActivity'); |
| late final _GetCurrentActivity = |
| _GetCurrentActivityPtr.asFunction<JObjectPtr Function()>(); |
| |
| ffi.Pointer<GlobalJniEnv> GetGlobalEnv() { |
| return _GetGlobalEnv(); |
| } |
| |
| late final _GetGlobalEnvPtr = |
| _lookup<ffi.NativeFunction<ffi.Pointer<GlobalJniEnv> Function()>>( |
| 'GetGlobalEnv'); |
| late final _GetGlobalEnv = |
| _GetGlobalEnvPtr.asFunction<ffi.Pointer<GlobalJniEnv> Function()>(); |
| } |
| |
| class jfieldID_ extends ffi.Opaque {} |
| |
| class jmethodID_ extends ffi.Opaque {} |
| |
| class JValue extends ffi.Union { |
| @JBooleanMarker() |
| external int z; |
| |
| @JByteMarker() |
| external int b; |
| |
| @JCharMarker() |
| external int c; |
| |
| @JShortMarker() |
| external int s; |
| |
| @JIntMarker() |
| external int i; |
| |
| @JLongMarker() |
| external int j; |
| |
| @JFloatMarker() |
| external double f; |
| |
| @JDoubleMarker() |
| external double d; |
| |
| external JObjectPtr l; |
| } |
| |
| /// Primitive types that match up with Java equivalents. |
| typedef JBooleanMarker = ffi.Uint8; |
| typedef JByteMarker = ffi.Int8; |
| typedef JCharMarker = ffi.Uint16; |
| typedef JShortMarker = ffi.Int16; |
| typedef JIntMarker = ffi.Int32; |
| typedef JLongMarker = ffi.Int64; |
| typedef JFloatMarker = ffi.Float; |
| typedef JDoubleMarker = ffi.Double; |
| |
| /// Reference types, in C. |
| typedef JObjectPtr = ffi.Pointer<ffi.Void>; |
| |
| abstract class jobjectRefType { |
| static const int JNIInvalidRefType = 0; |
| static const int JNILocalRefType = 1; |
| static const int JNIGlobalRefType = 2; |
| static const int JNIWeakGlobalRefType = 3; |
| } |
| |
| class JNINativeMethod extends ffi.Struct { |
| external ffi.Pointer<ffi.Char> name; |
| |
| external ffi.Pointer<ffi.Char> signature; |
| |
| external ffi.Pointer<ffi.Void> fnPtr; |
| } |
| |
| /// C++ version. |
| class _JavaVM extends ffi.Struct { |
| external ffi.Pointer<JNIInvokeInterface> functions; |
| } |
| |
| /// JNI invocation interface. |
| class JNIInvokeInterface extends ffi.Struct { |
| external ffi.Pointer<ffi.Void> reserved0; |
| |
| external ffi.Pointer<ffi.Void> reserved1; |
| |
| external ffi.Pointer<ffi.Void> reserved2; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<JIntMarker Function(ffi.Pointer<JavaVM>)>> |
| DestroyJavaVM; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JavaVM>, |
| ffi.Pointer<ffi.Pointer<JniEnv>>, |
| ffi.Pointer<ffi.Void>)>> AttachCurrentThread; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<JIntMarker Function(ffi.Pointer<JavaVM>)>> |
| DetachCurrentThread; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JavaVM>, |
| ffi.Pointer<ffi.Pointer<ffi.Void>>, JIntMarker)>> GetEnv; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JavaVM>, |
| ffi.Pointer<ffi.Pointer<JniEnv>>, |
| ffi.Pointer<ffi.Void>)>> AttachCurrentThreadAsDaemon; |
| } |
| |
| extension JNIInvokeInterfaceExtension on ffi.Pointer<JavaVM> { |
| int DestroyJavaVM() { |
| return value.ref.DestroyJavaVM |
| .asFunction<int Function(ffi.Pointer<JavaVM>)>()(this); |
| } |
| |
| int AttachCurrentThread( |
| ffi.Pointer<ffi.Pointer<JniEnv>> p_env, ffi.Pointer<ffi.Void> thr_args) { |
| return value.ref.AttachCurrentThread.asFunction< |
| int Function(ffi.Pointer<JavaVM>, ffi.Pointer<ffi.Pointer<JniEnv>>, |
| ffi.Pointer<ffi.Void>)>()(this, p_env, thr_args); |
| } |
| |
| int DetachCurrentThread() { |
| return value.ref.DetachCurrentThread |
| .asFunction<int Function(ffi.Pointer<JavaVM>)>()(this); |
| } |
| |
| int GetEnv(ffi.Pointer<ffi.Pointer<ffi.Void>> p_env, int version) { |
| return value.ref.GetEnv.asFunction< |
| int Function(ffi.Pointer<JavaVM>, ffi.Pointer<ffi.Pointer<ffi.Void>>, |
| int)>()(this, p_env, version); |
| } |
| |
| int AttachCurrentThreadAsDaemon( |
| ffi.Pointer<ffi.Pointer<JniEnv>> p_env, ffi.Pointer<ffi.Void> thr_args) { |
| return value.ref.AttachCurrentThreadAsDaemon.asFunction< |
| int Function(ffi.Pointer<JavaVM>, ffi.Pointer<ffi.Pointer<JniEnv>>, |
| ffi.Pointer<ffi.Void>)>()(this, p_env, thr_args); |
| } |
| } |
| |
| typedef JavaVM = ffi.Pointer<JNIInvokeInterface>; |
| typedef JniEnv = ffi.Pointer<JNINativeInterface>; |
| |
| /// Table of interface function pointers. |
| class JNINativeInterface extends ffi.Struct { |
| external ffi.Pointer<ffi.Void> reserved0; |
| |
| external ffi.Pointer<ffi.Void> reserved1; |
| |
| external ffi.Pointer<ffi.Void> reserved2; |
| |
| external ffi.Pointer<ffi.Void> reserved3; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JIntMarker Function(ffi.Pointer<JniEnv1>)>> GetVersion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JClassPtr Function(ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Char>, |
| JObjectPtr, ffi.Pointer<JByteMarker>, JSizeMarker)>> DefineClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JClassPtr Function(ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Char>)>> |
| FindClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JMethodIDPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| FromReflectedMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFieldIDPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| FromReflectedField; |
| |
| /// spec doesn't show jboolean parameter |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| JBooleanMarker)>> ToReflectedMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JClassPtr Function(ffi.Pointer<JniEnv1>, JClassPtr)>> GetSuperclass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JClassPtr)>> IsAssignableFrom; |
| |
| /// spec doesn't show jboolean parameter |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, |
| JBooleanMarker)>> ToReflectedField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JThrowablePtr)>> Throw; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, ffi.Pointer<ffi.Char>)>> |
| ThrowNew; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JThrowablePtr Function(ffi.Pointer<JniEnv1>)>> |
| ExceptionOccurred; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<JniEnv1>)>> |
| ExceptionDescribe; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<JniEnv1>)>> |
| ExceptionClear; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Char>)>> |
| FatalError; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JIntMarker)>> |
| PushLocalFrame; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> PopLocalFrame; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> NewGlobalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> DeleteGlobalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> DeleteLocalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JObjectPtr)>> IsSameObject; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> NewLocalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JIntMarker)>> |
| EnsureLocalCapacity; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JClassPtr)>> AllocObject; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> NewObject; |
| |
| external ffi.Pointer<ffi.Void> _NewObjectV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> NewObjectA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JClassPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> GetObjectClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr)>> IsInstanceOf; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JMethodIDPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, |
| ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> GetMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> |
| CallObjectMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallObjectMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> |
| CallBooleanMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallBooleanMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallByteMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallByteMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallCharMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallCharMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallShortMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallShortMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallIntMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallIntMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallLongMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallLongMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallFloatMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallFloatMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> |
| CallDoubleMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallDoubleMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr)>> CallVoidMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallVoidMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualObjectMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualObjectMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualBooleanMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualBooleanMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualByteMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualByteMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualCharMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualCharMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualShortMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualShortMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualIntMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualIntMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualLongMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualLongMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualFloatMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualFloatMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualDoubleMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualDoubleMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualVoidMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallNonvirtualVoidMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr, JClassPtr, |
| JMethodIDPtr, ffi.Pointer<JValue>)>> CallNonvirtualVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFieldIDPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, |
| ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> GetFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr)>> GetDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JObjectPtr)>> |
| SetObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, |
| JBooleanMarker)>> SetBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JByteMarker)>> |
| SetByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JCharMarker)>> |
| SetCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JShortMarker)>> |
| SetShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JIntMarker)>> |
| SetIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JLongMarker)>> |
| SetLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, JFloatMarker)>> |
| SetFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectPtr, JFieldIDPtr, |
| JDoubleMarker)>> SetDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JMethodIDPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, |
| ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> GetStaticMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticObjectMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticObjectMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticBooleanMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticBooleanMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticByteMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticByteMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticCharMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticCharMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticShortMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticShortMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticIntMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticIntMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticLongMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticLongMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticFloatMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticFloatMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticDoubleMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticDoubleMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr)>> |
| CallStaticVoidMethod; |
| |
| external ffi.Pointer<ffi.Void> _CallStaticVoidMethodV; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>> CallStaticVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFieldIDPtr Function(ffi.Pointer<JniEnv1>, JClassPtr, |
| ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> GetStaticFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> GetStaticIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr)>> |
| GetStaticDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JObjectPtr)>> |
| SetStaticObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, |
| JBooleanMarker)>> SetStaticBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JByteMarker)>> |
| SetStaticByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JCharMarker)>> |
| SetStaticCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JShortMarker)>> |
| SetStaticShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JIntMarker)>> |
| SetStaticIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JLongMarker)>> |
| SetStaticLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JFloatMarker)>> |
| SetStaticFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JClassPtr, JFieldIDPtr, JDoubleMarker)>> |
| SetStaticDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JStringPtr Function( |
| ffi.Pointer<JniEnv1>, ffi.Pointer<JCharMarker>, JSizeMarker)>> |
| NewString; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JSizeMarker Function(ffi.Pointer<JniEnv1>, JStringPtr)>> |
| GetStringLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function(ffi.Pointer<JniEnv1>, JStringPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetStringChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JStringPtr, ffi.Pointer<JCharMarker>)>> |
| ReleaseStringChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JStringPtr Function(ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Char>)>> |
| NewStringUTF; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JSizeMarker Function(ffi.Pointer<JniEnv1>, JStringPtr)>> |
| GetStringUTFLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<ffi.Char> Function(ffi.Pointer<JniEnv1>, JStringPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetStringUTFChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JStringPtr, ffi.Pointer<ffi.Char>)>> |
| ReleaseStringUTFChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JSizeMarker Function(ffi.Pointer<JniEnv1>, JArrayPtr)>> |
| GetArrayLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectArrayPtr Function( |
| ffi.Pointer<JniEnv1>, JSizeMarker, JClassPtr, JObjectPtr)>> |
| NewObjectArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, JObjectArrayPtr, JSizeMarker)>> |
| GetObjectArrayElement; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JObjectArrayPtr, JSizeMarker, |
| JObjectPtr)>> SetObjectArrayElement; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewBooleanArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewByteArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewCharArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewShortArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewIntArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewLongArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewFloatArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleArrayPtr Function(ffi.Pointer<JniEnv1>, JSizeMarker)>> |
| NewDoubleArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JBooleanMarker> Function( |
| ffi.Pointer<JniEnv1>, |
| JBooleanArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetBooleanArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JByteMarker> Function(ffi.Pointer<JniEnv1>, JByteArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetByteArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function(ffi.Pointer<JniEnv1>, JCharArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetCharArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JShortMarker> Function( |
| ffi.Pointer<JniEnv1>, |
| JShortArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetShortArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JIntMarker> Function(ffi.Pointer<JniEnv1>, JIntArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetIntArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JLongMarker> Function(ffi.Pointer<JniEnv1>, JLongArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetLongArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JFloatMarker> Function( |
| ffi.Pointer<JniEnv1>, |
| JFloatArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetFloatArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JDoubleMarker> Function( |
| ffi.Pointer<JniEnv1>, |
| JDoubleArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetDoubleArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, |
| JBooleanArrayPtr, |
| ffi.Pointer<JBooleanMarker>, |
| JIntMarker)>> ReleaseBooleanArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JByteArrayPtr, |
| ffi.Pointer<JByteMarker>, JIntMarker)>> ReleaseByteArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JCharArrayPtr, |
| ffi.Pointer<JCharMarker>, JIntMarker)>> ReleaseCharArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, |
| JShortArrayPtr, |
| ffi.Pointer<JShortMarker>, |
| JIntMarker)>> ReleaseShortArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JIntArrayPtr, |
| ffi.Pointer<JIntMarker>, JIntMarker)>> ReleaseIntArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JLongArrayPtr, |
| ffi.Pointer<JLongMarker>, JIntMarker)>> ReleaseLongArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, |
| JFloatArrayPtr, |
| ffi.Pointer<JFloatMarker>, |
| JIntMarker)>> ReleaseFloatArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, |
| JDoubleArrayPtr, |
| ffi.Pointer<JDoubleMarker>, |
| JIntMarker)>> ReleaseDoubleArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JBooleanArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JBooleanMarker>)>> GetBooleanArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JByteArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JByteMarker>)>> GetByteArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JCharArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JCharMarker>)>> GetCharArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JShortArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JShortMarker>)>> GetShortArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JIntArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JIntMarker>)>> GetIntArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JLongArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JLongMarker>)>> GetLongArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JFloatArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JFloatMarker>)>> GetFloatArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JDoubleArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JDoubleMarker>)>> GetDoubleArrayRegion; |
| |
| /// spec shows these without const; some jni.h do, some don't |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JBooleanArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JBooleanMarker>)>> SetBooleanArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JByteArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JByteMarker>)>> SetByteArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JCharArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JCharMarker>)>> SetCharArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JShortArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JShortMarker>)>> SetShortArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JIntArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JIntMarker>)>> SetIntArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JLongArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JLongMarker>)>> SetLongArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JFloatArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JFloatMarker>)>> SetFloatArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JDoubleArrayPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JDoubleMarker>)>> SetDoubleArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JClassPtr, |
| ffi.Pointer<JNINativeMethod>, JIntMarker)>> RegisterNatives; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JClassPtr)>> |
| UnregisterNatives; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> MonitorEnter; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> MonitorExit; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Pointer<JavaVM>>)>> |
| GetJavaVM; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JStringPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<JCharMarker>)>> GetStringRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(ffi.Pointer<JniEnv1>, JStringPtr, JSizeMarker, |
| JSizeMarker, ffi.Pointer<ffi.Char>)>> GetStringUTFRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<ffi.Void> Function(ffi.Pointer<JniEnv1>, JArrayPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetPrimitiveArrayCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, |
| JArrayPtr, |
| ffi.Pointer<ffi.Void>, |
| JIntMarker)>> ReleasePrimitiveArrayCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function(ffi.Pointer<JniEnv1>, JStringPtr, |
| ffi.Pointer<JBooleanMarker>)>> GetStringCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| ffi.Pointer<JniEnv1>, JStringPtr, ffi.Pointer<JCharMarker>)>> |
| ReleaseStringCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JWeakPtr Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| NewWeakGlobalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<ffi.Void Function(ffi.Pointer<JniEnv1>, JWeakPtr)>> |
| DeleteWeakGlobalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(ffi.Pointer<JniEnv1>)>> |
| ExceptionCheck; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| ffi.Pointer<JniEnv1>, ffi.Pointer<ffi.Void>, JLongMarker)>> |
| NewDirectByteBuffer; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<ffi.Void> Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| GetDirectBufferAddress; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| GetDirectBufferCapacity; |
| |
| /// added in JNI 1.6 |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Int32 Function(ffi.Pointer<JniEnv1>, JObjectPtr)>> |
| GetObjectRefType; |
| } |
| |
| typedef JniEnv1 = ffi.Pointer<JNINativeInterface>; |
| typedef JClassPtr = JObjectPtr; |
| |
| /// "cardinal indices and sizes" |
| typedef JSizeMarker = JIntMarker; |
| typedef JMethodIDPtr = ffi.Pointer<jmethodID_>; |
| typedef JFieldIDPtr = ffi.Pointer<jfieldID_>; |
| typedef JThrowablePtr = JObjectPtr; |
| typedef JStringPtr = JObjectPtr; |
| typedef JArrayPtr = JObjectPtr; |
| typedef JObjectArrayPtr = JArrayPtr; |
| typedef JBooleanArrayPtr = JArrayPtr; |
| typedef JByteArrayPtr = JArrayPtr; |
| typedef JCharArrayPtr = JArrayPtr; |
| typedef JShortArrayPtr = JArrayPtr; |
| typedef JIntArrayPtr = JArrayPtr; |
| typedef JLongArrayPtr = JArrayPtr; |
| typedef JFloatArrayPtr = JArrayPtr; |
| typedef JDoubleArrayPtr = JArrayPtr; |
| typedef JWeakPtr = JObjectPtr; |
| |
| class JavaVMAttachArgs extends ffi.Struct { |
| /// must be >= JNI_VERSION_1_2 |
| @JIntMarker() |
| external int version; |
| |
| /// NULL or name of thread as modified UTF-8 str |
| external ffi.Pointer<ffi.Char> name; |
| |
| /// global ref of a ThreadGroup object, or NULL |
| external JObjectPtr group; |
| } |
| |
| /// JNI 1.2+ initialization. (As of 1.6, the pre-1.2 structures are no |
| /// longer supported.) |
| class JavaVMOption extends ffi.Struct { |
| external ffi.Pointer<ffi.Char> optionString; |
| |
| external ffi.Pointer<ffi.Void> extraInfo; |
| } |
| |
| class JavaVMInitArgs extends ffi.Struct { |
| /// use JNI_VERSION_1_2 or later |
| @JIntMarker() |
| external int version; |
| |
| @JIntMarker() |
| external int nOptions; |
| |
| external ffi.Pointer<JavaVMOption> options; |
| |
| @JBooleanMarker() |
| external int ignoreUnrecognized; |
| } |
| |
| /// Types used by JNI API to distinguish between primitive types. |
| abstract class JniCallType { |
| static const int booleanType = 0; |
| static const int byteType = 1; |
| static const int shortType = 2; |
| static const int charType = 3; |
| static const int intType = 4; |
| static const int longType = 5; |
| static const int floatType = 6; |
| static const int doubleType = 7; |
| static const int objectType = 8; |
| static const int voidType = 9; |
| } |
| |
| /// Result type for use by JNI. |
| /// |
| /// If [exception] is null, it means the result is valid. |
| /// It's assumed that the caller knows the expected type in [result]. |
| class JniResult extends ffi.Struct { |
| external JValue result; |
| |
| external JThrowablePtr exception; |
| } |
| |
| /// Similar to [JniResult] but for class lookups. |
| class JniClassLookupResult extends ffi.Struct { |
| external JClassPtr classRef; |
| |
| external JThrowablePtr exception; |
| } |
| |
| /// Similar to [JniResult] but for method/field ID lookups. |
| class JniPointerResult extends ffi.Struct { |
| external ffi.Pointer<ffi.Void> id; |
| |
| external JThrowablePtr exception; |
| } |
| |
| /// JniExceptionDetails holds 2 jstring objects, one is the result of |
| /// calling `toString` on exception object, other is stack trace; |
| class JniExceptionDetails extends ffi.Struct { |
| external JStringPtr message; |
| |
| external JStringPtr stacktrace; |
| } |
| |
| /// This struct contains functions which wrap method call / field access conveniently along with |
| /// exception checking. |
| /// |
| /// Flutter embedding checks for pending JNI exceptions before an FFI transition, which requires us |
| /// to check for and clear the exception before returning to dart code, which requires these functions |
| /// to return result types. |
| class JniAccessors extends ffi.Struct { |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniClassLookupResult Function(ffi.Pointer<ffi.Char>)>> getClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniPointerResult Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| getFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniPointerResult Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| getStaticFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniPointerResult Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| getMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniPointerResult Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| getStaticMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniResult Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| newObject; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JniPointerResult Function(JSizeMarker, ffi.Int)>> |
| newPrimitiveArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniPointerResult Function(JSizeMarker, JClassPtr, JObjectPtr)>> |
| newObjectArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JniResult Function(JArrayPtr, ffi.Int, ffi.Int)>> |
| getArrayElement; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniResult Function( |
| JObjectPtr, JMethodIDPtr, ffi.Int, ffi.Pointer<JValue>)>> |
| callMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniResult Function( |
| JClassPtr, JMethodIDPtr, ffi.Int, ffi.Pointer<JValue>)>> |
| callStaticMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniResult Function(JObjectPtr, JFieldIDPtr, ffi.Int)>> getField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JniResult Function(JClassPtr, JFieldIDPtr, ffi.Int)>> getStaticField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JniExceptionDetails Function(JThrowablePtr)>> |
| getExceptionDetails; |
| } |
| |
| extension JniAccessorsExtension on ffi.Pointer<JniAccessors> { |
| JniClassLookupResult getClass(ffi.Pointer<ffi.Char> internalName) { |
| return ref.getClass |
| .asFunction<JniClassLookupResult Function(ffi.Pointer<ffi.Char>)>()( |
| internalName); |
| } |
| |
| JniPointerResult getFieldID(JClassPtr cls, ffi.Pointer<ffi.Char> fieldName, |
| ffi.Pointer<ffi.Char> signature) { |
| return ref.getFieldID.asFunction< |
| JniPointerResult Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(cls, fieldName, signature); |
| } |
| |
| JniPointerResult getStaticFieldID(JClassPtr cls, |
| ffi.Pointer<ffi.Char> fieldName, ffi.Pointer<ffi.Char> signature) { |
| return ref.getStaticFieldID.asFunction< |
| JniPointerResult Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(cls, fieldName, signature); |
| } |
| |
| JniPointerResult getMethodID(JClassPtr cls, ffi.Pointer<ffi.Char> methodName, |
| ffi.Pointer<ffi.Char> signature) { |
| return ref.getMethodID.asFunction< |
| JniPointerResult Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(cls, methodName, signature); |
| } |
| |
| JniPointerResult getStaticMethodID(JClassPtr cls, |
| ffi.Pointer<ffi.Char> methodName, ffi.Pointer<ffi.Char> signature) { |
| return ref.getStaticMethodID.asFunction< |
| JniPointerResult Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(cls, methodName, signature); |
| } |
| |
| JniResult newObject( |
| JClassPtr cls, JMethodIDPtr ctor, ffi.Pointer<JValue> args) { |
| return ref.newObject.asFunction< |
| JniResult Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()(cls, ctor, args); |
| } |
| |
| JniPointerResult newPrimitiveArray(int length, int type) { |
| return ref.newPrimitiveArray |
| .asFunction<JniPointerResult Function(int, int)>()(length, type); |
| } |
| |
| JniPointerResult newObjectArray( |
| int length, JClassPtr elementClass, JObjectPtr initialElement) { |
| return ref.newObjectArray.asFunction< |
| JniPointerResult Function(int, JClassPtr, JObjectPtr)>()( |
| length, elementClass, initialElement); |
| } |
| |
| JniResult getArrayElement(JArrayPtr array, int index, int type) { |
| return ref.getArrayElement |
| .asFunction<JniResult Function(JArrayPtr, int, int)>()( |
| array, index, type); |
| } |
| |
| JniResult callMethod(JObjectPtr obj, JMethodIDPtr methodID, int callType, |
| ffi.Pointer<JValue> args) { |
| return ref.callMethod.asFunction< |
| JniResult Function(JObjectPtr, JMethodIDPtr, int, |
| ffi.Pointer<JValue>)>()(obj, methodID, callType, args); |
| } |
| |
| JniResult callStaticMethod(JClassPtr cls, JMethodIDPtr methodID, int callType, |
| ffi.Pointer<JValue> args) { |
| return ref.callStaticMethod.asFunction< |
| JniResult Function(JClassPtr, JMethodIDPtr, int, |
| ffi.Pointer<JValue>)>()(cls, methodID, callType, args); |
| } |
| |
| JniResult getField(JObjectPtr obj, JFieldIDPtr fieldID, int callType) { |
| return ref.getField |
| .asFunction<JniResult Function(JObjectPtr, JFieldIDPtr, int)>()( |
| obj, fieldID, callType); |
| } |
| |
| JniResult getStaticField(JClassPtr cls, JFieldIDPtr fieldID, int callType) { |
| return ref.getStaticField |
| .asFunction<JniResult Function(JClassPtr, JFieldIDPtr, int)>()( |
| cls, fieldID, callType); |
| } |
| |
| JniExceptionDetails getExceptionDetails(JThrowablePtr exception) { |
| return ref.getExceptionDetails |
| .asFunction<JniExceptionDetails Function(JThrowablePtr)>()(exception); |
| } |
| } |
| |
| /// Wrapper over JNIEnv in the JNI API, which can be used from multiple Dart |
| /// Threads. |
| /// |
| /// It consists of wrappers to JNIEnv methods which manage the thread-local |
| /// JNIEnv pointer in C code. Additionally, any returned local reference value |
| /// is converted to global reference. |
| /// |
| /// For the documentation on methods themselves, see the JNI Specification at |
| /// https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/functions.html |
| /// |
| /// Apart from the specification, the Android NDK's JNI page consists of useful |
| /// information about using the JNI: |
| /// https://developer.android.com/training/articles/perf-jni |
| class GlobalJniEnv extends ffi.Struct { |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function()>> GetVersion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JClassPtr Function(ffi.Pointer<ffi.Char>, JObjectPtr, |
| ffi.Pointer<JByteMarker>, JSizeMarker)>> DefineClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JClassPtr Function(ffi.Pointer<ffi.Char>)>> FindClass; |
| |
| external ffi.Pointer<ffi.NativeFunction<JMethodIDPtr Function(JObjectPtr)>> |
| FromReflectedMethod; |
| |
| external ffi.Pointer<ffi.NativeFunction<JFieldIDPtr Function(JObjectPtr)>> |
| FromReflectedField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(JClassPtr, JMethodIDPtr, JBooleanMarker)>> |
| ToReflectedMethod; |
| |
| external ffi.Pointer<ffi.NativeFunction<JClassPtr Function(JClassPtr)>> |
| GetSuperclass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JClassPtr, JClassPtr)>> |
| IsAssignableFrom; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(JClassPtr, JFieldIDPtr, JBooleanMarker)>> |
| ToReflectedField; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JThrowablePtr)>> |
| Throw; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(JClassPtr, ffi.Pointer<ffi.Char>)>> ThrowNew; |
| |
| external ffi.Pointer<ffi.NativeFunction<JThrowablePtr Function()>> |
| ExceptionOccurred; |
| |
| external ffi.Pointer<ffi.NativeFunction<ffi.Void Function()>> |
| ExceptionDescribe; |
| |
| external ffi.Pointer<ffi.NativeFunction<ffi.Void Function()>> ExceptionClear; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Char>)>> |
| FatalError; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JIntMarker)>> |
| PushLocalFrame; |
| |
| external ffi.Pointer<ffi.NativeFunction<JObjectPtr Function(JObjectPtr)>> |
| PopLocalFrame; |
| |
| external ffi.Pointer<ffi.NativeFunction<JObjectPtr Function(JObjectPtr)>> |
| NewGlobalRef; |
| |
| external ffi.Pointer<ffi.NativeFunction<ffi.Void Function(JObjectPtr)>> |
| DeleteGlobalRef; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JObjectPtr, JObjectPtr)>> |
| IsSameObject; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JIntMarker)>> |
| EnsureLocalCapacity; |
| |
| external ffi.Pointer<ffi.NativeFunction<JObjectPtr Function(JClassPtr)>> |
| AllocObject; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JClassPtr, JMethodIDPtr)>> |
| NewObject; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> NewObjectA; |
| |
| external ffi.Pointer<ffi.NativeFunction<JClassPtr Function(JObjectPtr)>> |
| GetObjectClass; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JObjectPtr, JClassPtr)>> |
| IsInstanceOf; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JMethodIDPtr Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| GetMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JObjectPtr, JMethodIDPtr)>> |
| CallObjectMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallBooleanMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JByteMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallByteMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JCharMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallCharMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JShortMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallShortMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JIntMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallIntMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JLongMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallLongMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JFloatMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallFloatMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> CallFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JDoubleMarker Function(JObjectPtr, JMethodIDPtr)>> |
| CallDoubleMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<ffi.Void Function(JObjectPtr, JMethodIDPtr)>> |
| CallVoidMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualObjectMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualBooleanMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualByteMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualCharMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualShortMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualIntMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualLongMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualFloatMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualDoubleMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JClassPtr, JMethodIDPtr)>> |
| CallNonvirtualVoidMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallNonvirtualVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFieldIDPtr Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| GetFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JObjectPtr, JFieldIDPtr)>> |
| GetObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JByteMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JCharMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JShortMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JIntMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JLongMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JFloatMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JDoubleMarker Function(JObjectPtr, JFieldIDPtr)>> |
| GetDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JObjectPtr)>> |
| SetObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JBooleanMarker)>> |
| SetBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JByteMarker)>> |
| SetByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JCharMarker)>> |
| SetCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JShortMarker)>> |
| SetShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JIntMarker)>> SetIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JLongMarker)>> |
| SetLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JFloatMarker)>> |
| SetFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectPtr, JFieldIDPtr, JDoubleMarker)>> |
| SetDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JMethodIDPtr Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| GetStaticMethodID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticObjectMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticObjectMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticBooleanMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JBooleanMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticBooleanMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JByteMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticByteMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JByteMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticByteMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JCharMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticCharMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JCharMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticCharMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JShortMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticShortMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JShortMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticShortMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JIntMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticIntMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticIntMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JLongMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticLongMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JLongMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticLongMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JFloatMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticFloatMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFloatMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticFloatMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JDoubleMarker Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticDoubleMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JDoubleMarker Function( |
| JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticDoubleMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<ffi.Void Function(JClassPtr, JMethodIDPtr)>> |
| CallStaticVoidMethod; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>> |
| CallStaticVoidMethodA; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JFieldIDPtr Function( |
| JClassPtr, ffi.Pointer<ffi.Char>, ffi.Pointer<ffi.Char>)>> |
| GetStaticFieldID; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JBooleanMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JByteMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JCharMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JShortMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JIntMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JLongMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JFloatMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JDoubleMarker Function(JClassPtr, JFieldIDPtr)>> |
| GetStaticDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JObjectPtr)>> |
| SetStaticObjectField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JBooleanMarker)>> |
| SetStaticBooleanField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JByteMarker)>> |
| SetStaticByteField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JCharMarker)>> |
| SetStaticCharField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JShortMarker)>> |
| SetStaticShortField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JIntMarker)>> |
| SetStaticIntField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JLongMarker)>> |
| SetStaticLongField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JFloatMarker)>> |
| SetStaticFloatField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JClassPtr, JFieldIDPtr, JDoubleMarker)>> |
| SetStaticDoubleField; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JStringPtr Function(ffi.Pointer<JCharMarker>, JSizeMarker)>> |
| NewString; |
| |
| external ffi.Pointer<ffi.NativeFunction<JSizeMarker Function(JStringPtr)>> |
| GetStringLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>> GetStringChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JStringPtr, ffi.Pointer<JCharMarker>)>> |
| ReleaseStringChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JStringPtr Function(ffi.Pointer<ffi.Char>)>> |
| NewStringUTF; |
| |
| external ffi.Pointer<ffi.NativeFunction<JSizeMarker Function(JStringPtr)>> |
| GetStringUTFLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<ffi.Char> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>> GetStringUTFChars; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JStringPtr, ffi.Pointer<ffi.Char>)>> |
| ReleaseStringUTFChars; |
| |
| external ffi.Pointer<ffi.NativeFunction<JSizeMarker Function(JArrayPtr)>> |
| GetArrayLength; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectArrayPtr Function(JSizeMarker, JClassPtr, JObjectPtr)>> |
| NewObjectArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<JObjectPtr Function(JObjectArrayPtr, JSizeMarker)>> |
| GetObjectArrayElement; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JObjectArrayPtr, JSizeMarker, JObjectPtr)>> |
| SetObjectArrayElement; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<JBooleanArrayPtr Function(JSizeMarker)>> |
| NewBooleanArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JByteArrayPtr Function(JSizeMarker)>> |
| NewByteArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JCharArrayPtr Function(JSizeMarker)>> |
| NewCharArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JShortArrayPtr Function(JSizeMarker)>> |
| NewShortArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntArrayPtr Function(JSizeMarker)>> |
| NewIntArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JLongArrayPtr Function(JSizeMarker)>> |
| NewLongArray; |
| |
| external ffi.Pointer<ffi.NativeFunction<JFloatArrayPtr Function(JSizeMarker)>> |
| NewFloatArray; |
| |
| external ffi |
| .Pointer<ffi.NativeFunction<JDoubleArrayPtr Function(JSizeMarker)>> |
| NewDoubleArray; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JBooleanMarker> Function( |
| JBooleanArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetBooleanArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JByteMarker> Function( |
| JByteArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetByteArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JCharArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetCharArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JShortMarker> Function( |
| JShortArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetShortArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JIntMarker> Function( |
| JIntArrayPtr, ffi.Pointer<JBooleanMarker>)>> GetIntArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JLongMarker> Function( |
| JLongArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetLongArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JFloatMarker> Function( |
| JFloatArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetFloatArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JDoubleMarker> Function( |
| JDoubleArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetDoubleArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JBooleanArrayPtr, ffi.Pointer<JBooleanMarker>, JIntMarker)>> |
| ReleaseBooleanArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JByteArrayPtr, ffi.Pointer<JByteMarker>, JIntMarker)>> |
| ReleaseByteArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JCharArrayPtr, ffi.Pointer<JCharMarker>, JIntMarker)>> |
| ReleaseCharArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JShortArrayPtr, ffi.Pointer<JShortMarker>, JIntMarker)>> |
| ReleaseShortArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JIntArrayPtr, ffi.Pointer<JIntMarker>, JIntMarker)>> |
| ReleaseIntArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JLongArrayPtr, ffi.Pointer<JLongMarker>, JIntMarker)>> |
| ReleaseLongArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JFloatArrayPtr, ffi.Pointer<JFloatMarker>, JIntMarker)>> |
| ReleaseFloatArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JDoubleArrayPtr, ffi.Pointer<JDoubleMarker>, JIntMarker)>> |
| ReleaseDoubleArrayElements; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JBooleanArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JBooleanMarker>)>> GetBooleanArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JByteArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JByteMarker>)>> GetByteArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JCharArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JCharMarker>)>> GetCharArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JShortArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JShortMarker>)>> GetShortArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JIntArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JIntMarker>)>> GetIntArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JLongArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JLongMarker>)>> GetLongArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JFloatArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JFloatMarker>)>> GetFloatArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JDoubleArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JDoubleMarker>)>> GetDoubleArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JBooleanArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JBooleanMarker>)>> SetBooleanArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JByteArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JByteMarker>)>> SetByteArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JCharArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JCharMarker>)>> SetCharArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JShortArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JShortMarker>)>> SetShortArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JIntArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JIntMarker>)>> SetIntArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JLongArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JLongMarker>)>> SetLongArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JFloatArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JFloatMarker>)>> SetFloatArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JDoubleArrayPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JDoubleMarker>)>> SetDoubleArrayRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function( |
| JClassPtr, ffi.Pointer<JNINativeMethod>, JIntMarker)>> |
| RegisterNatives; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JClassPtr)>> |
| UnregisterNatives; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JObjectPtr)>> |
| MonitorEnter; |
| |
| external ffi.Pointer<ffi.NativeFunction<JIntMarker Function(JObjectPtr)>> |
| MonitorExit; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JIntMarker Function(ffi.Pointer<ffi.Pointer<JavaVM>>)>> GetJavaVM; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JStringPtr, JSizeMarker, JSizeMarker, |
| ffi.Pointer<JCharMarker>)>> GetStringRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function( |
| JStringPtr, JSizeMarker, JSizeMarker, ffi.Pointer<ffi.Char>)>> |
| GetStringUTFRegion; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<ffi.Void> Function( |
| JArrayPtr, ffi.Pointer<JBooleanMarker>)>> |
| GetPrimitiveArrayCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JArrayPtr, ffi.Pointer<ffi.Void>, JIntMarker)>> |
| ReleasePrimitiveArrayCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>> GetStringCritical; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| ffi.Void Function(JStringPtr, ffi.Pointer<JCharMarker>)>> |
| ReleaseStringCritical; |
| |
| external ffi.Pointer<ffi.NativeFunction<JWeakPtr Function(JObjectPtr)>> |
| NewWeakGlobalRef; |
| |
| external ffi.Pointer<ffi.NativeFunction<ffi.Void Function(JWeakPtr)>> |
| DeleteWeakGlobalRef; |
| |
| external ffi.Pointer<ffi.NativeFunction<JBooleanMarker Function()>> |
| ExceptionCheck; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction< |
| JObjectPtr Function(ffi.Pointer<ffi.Void>, JLongMarker)>> |
| NewDirectByteBuffer; |
| |
| external ffi.Pointer< |
| ffi.NativeFunction<ffi.Pointer<ffi.Void> Function(JObjectPtr)>> |
| GetDirectBufferAddress; |
| |
| external ffi.Pointer<ffi.NativeFunction<JLongMarker Function(JObjectPtr)>> |
| GetDirectBufferCapacity; |
| |
| external ffi.Pointer<ffi.NativeFunction<ffi.Int32 Function(JObjectPtr)>> |
| GetObjectRefType; |
| } |
| |
| extension GlobalJniEnvExtension on ffi.Pointer<GlobalJniEnv> { |
| int GetVersion() { |
| return ref.GetVersion.asFunction<int Function()>()(); |
| } |
| |
| JClassPtr DefineClass(ffi.Pointer<ffi.Char> name, JObjectPtr loader, |
| ffi.Pointer<JByteMarker> buf, int bufLen) { |
| return ref.DefineClass.asFunction< |
| JClassPtr Function(ffi.Pointer<ffi.Char>, JObjectPtr, |
| ffi.Pointer<JByteMarker>, int)>()(name, loader, buf, bufLen); |
| } |
| |
| JClassPtr FindClass(ffi.Pointer<ffi.Char> name) { |
| return ref.FindClass.asFunction< |
| JClassPtr Function(ffi.Pointer<ffi.Char>)>()(name); |
| } |
| |
| JMethodIDPtr FromReflectedMethod(JObjectPtr method) { |
| return ref.FromReflectedMethod.asFunction< |
| JMethodIDPtr Function(JObjectPtr)>()(method); |
| } |
| |
| JFieldIDPtr FromReflectedField(JObjectPtr field) { |
| return ref.FromReflectedField.asFunction< |
| JFieldIDPtr Function(JObjectPtr)>()(field); |
| } |
| |
| JObjectPtr ToReflectedMethod( |
| JClassPtr cls, JMethodIDPtr methodId, int isStatic) { |
| return ref.ToReflectedMethod.asFunction< |
| JObjectPtr Function( |
| JClassPtr, JMethodIDPtr, int)>()(cls, methodId, isStatic); |
| } |
| |
| JClassPtr GetSuperclass(JClassPtr clazz) { |
| return ref.GetSuperclass.asFunction<JClassPtr Function(JClassPtr)>()(clazz); |
| } |
| |
| int IsAssignableFrom(JClassPtr clazz1, JClassPtr clazz2) { |
| return ref.IsAssignableFrom.asFunction< |
| int Function(JClassPtr, JClassPtr)>()(clazz1, clazz2); |
| } |
| |
| JObjectPtr ToReflectedField( |
| JClassPtr cls, JFieldIDPtr fieldID, int isStatic) { |
| return ref.ToReflectedField.asFunction< |
| JObjectPtr Function( |
| JClassPtr, JFieldIDPtr, int)>()(cls, fieldID, isStatic); |
| } |
| |
| int Throw(JThrowablePtr obj) { |
| return ref.Throw.asFunction<int Function(JThrowablePtr)>()(obj); |
| } |
| |
| int ThrowNew(JClassPtr clazz, ffi.Pointer<ffi.Char> message) { |
| return ref.ThrowNew.asFunction< |
| int Function(JClassPtr, ffi.Pointer<ffi.Char>)>()(clazz, message); |
| } |
| |
| JThrowablePtr ExceptionOccurred() { |
| return ref.ExceptionOccurred.asFunction<JThrowablePtr Function()>()(); |
| } |
| |
| void ExceptionDescribe() { |
| return ref.ExceptionDescribe.asFunction<void Function()>()(); |
| } |
| |
| void ExceptionClear() { |
| return ref.ExceptionClear.asFunction<void Function()>()(); |
| } |
| |
| void FatalError(ffi.Pointer<ffi.Char> msg) { |
| return ref.FatalError.asFunction<void Function(ffi.Pointer<ffi.Char>)>()( |
| msg); |
| } |
| |
| int PushLocalFrame(int capacity) { |
| return ref.PushLocalFrame.asFunction<int Function(int)>()(capacity); |
| } |
| |
| JObjectPtr PopLocalFrame(JObjectPtr result) { |
| return ref.PopLocalFrame.asFunction<JObjectPtr Function(JObjectPtr)>()( |
| result); |
| } |
| |
| JObjectPtr NewGlobalRef(JObjectPtr obj) { |
| return ref.NewGlobalRef.asFunction<JObjectPtr Function(JObjectPtr)>()(obj); |
| } |
| |
| void DeleteGlobalRef(JObjectPtr globalRef) { |
| return ref.DeleteGlobalRef.asFunction<void Function(JObjectPtr)>()( |
| globalRef); |
| } |
| |
| int IsSameObject(JObjectPtr ref1, JObjectPtr ref2) { |
| return ref.IsSameObject.asFunction<int Function(JObjectPtr, JObjectPtr)>()( |
| ref1, ref2); |
| } |
| |
| int EnsureLocalCapacity(int capacity) { |
| return ref.EnsureLocalCapacity.asFunction<int Function(int)>()(capacity); |
| } |
| |
| JObjectPtr AllocObject(JClassPtr clazz) { |
| return ref.AllocObject.asFunction<JObjectPtr Function(JClassPtr)>()(clazz); |
| } |
| |
| JObjectPtr NewObject(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.NewObject.asFunction< |
| JObjectPtr Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| JObjectPtr NewObjectA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.NewObjectA.asFunction< |
| JObjectPtr Function(JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(clazz, methodID, args); |
| } |
| |
| JClassPtr GetObjectClass(JObjectPtr obj) { |
| return ref.GetObjectClass.asFunction<JClassPtr Function(JObjectPtr)>()(obj); |
| } |
| |
| int IsInstanceOf(JObjectPtr obj, JClassPtr clazz) { |
| return ref.IsInstanceOf.asFunction<int Function(JObjectPtr, JClassPtr)>()( |
| obj, clazz); |
| } |
| |
| JMethodIDPtr GetMethodID( |
| JClassPtr clazz, ffi.Pointer<ffi.Char> name, ffi.Pointer<ffi.Char> sig) { |
| return ref.GetMethodID.asFunction< |
| JMethodIDPtr Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(clazz, name, sig); |
| } |
| |
| JObjectPtr CallObjectMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallObjectMethod.asFunction< |
| JObjectPtr Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| JObjectPtr CallObjectMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallObjectMethodA.asFunction< |
| JObjectPtr Function(JObjectPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, methodID, args); |
| } |
| |
| int CallBooleanMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallBooleanMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallBooleanMethodA( |
| JObjectPtr obj, JMethodIDPtr methodId, ffi.Pointer<JValue> args) { |
| return ref.CallBooleanMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodId, args); |
| } |
| |
| int CallByteMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallByteMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallByteMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallByteMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| int CallCharMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallCharMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallCharMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallCharMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| int CallShortMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallShortMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallShortMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallShortMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| int CallIntMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallIntMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallIntMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallIntMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| int CallLongMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallLongMethod.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallLongMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallLongMethodA.asFunction< |
| int Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| double CallFloatMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallFloatMethod.asFunction< |
| double Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| double CallFloatMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallFloatMethodA.asFunction< |
| double Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| double CallDoubleMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallDoubleMethod.asFunction< |
| double Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| double CallDoubleMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallDoubleMethodA.asFunction< |
| double Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| void CallVoidMethod(JObjectPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallVoidMethod.asFunction< |
| void Function(JObjectPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| void CallVoidMethodA( |
| JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallVoidMethodA.asFunction< |
| void Function(JObjectPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| obj, methodID, args); |
| } |
| |
| JObjectPtr CallNonvirtualObjectMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualObjectMethod.asFunction< |
| JObjectPtr Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| JObjectPtr CallNonvirtualObjectMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualObjectMethodA.asFunction< |
| JObjectPtr Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualBooleanMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualBooleanMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualBooleanMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualBooleanMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualByteMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualByteMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualByteMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualByteMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualCharMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualCharMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualCharMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualCharMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualShortMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualShortMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualShortMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualShortMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualIntMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualIntMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualIntMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualIntMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| int CallNonvirtualLongMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualLongMethod.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| int CallNonvirtualLongMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualLongMethodA.asFunction< |
| int Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| double CallNonvirtualFloatMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualFloatMethod.asFunction< |
| double Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| double CallNonvirtualFloatMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualFloatMethodA.asFunction< |
| double Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| double CallNonvirtualDoubleMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualDoubleMethod.asFunction< |
| double Function( |
| JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| double CallNonvirtualDoubleMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualDoubleMethodA.asFunction< |
| double Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| void CallNonvirtualVoidMethod( |
| JObjectPtr arg1, JClassPtr arg2, JMethodIDPtr arg3) { |
| return ref.CallNonvirtualVoidMethod.asFunction< |
| void Function(JObjectPtr, JClassPtr, JMethodIDPtr)>()(arg1, arg2, arg3); |
| } |
| |
| void CallNonvirtualVoidMethodA(JObjectPtr obj, JClassPtr clazz, |
| JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallNonvirtualVoidMethodA.asFunction< |
| void Function(JObjectPtr, JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(obj, clazz, methodID, args); |
| } |
| |
| JFieldIDPtr GetFieldID( |
| JClassPtr clazz, ffi.Pointer<ffi.Char> name, ffi.Pointer<ffi.Char> sig) { |
| return ref.GetFieldID.asFunction< |
| JFieldIDPtr Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(clazz, name, sig); |
| } |
| |
| JObjectPtr GetObjectField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetObjectField.asFunction< |
| JObjectPtr Function(JObjectPtr, JFieldIDPtr)>()(obj, fieldID); |
| } |
| |
| int GetBooleanField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetBooleanField.asFunction< |
| int Function(JObjectPtr, JFieldIDPtr)>()(obj, fieldID); |
| } |
| |
| int GetByteField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetByteField.asFunction<int Function(JObjectPtr, JFieldIDPtr)>()( |
| obj, fieldID); |
| } |
| |
| int GetCharField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetCharField.asFunction<int Function(JObjectPtr, JFieldIDPtr)>()( |
| obj, fieldID); |
| } |
| |
| int GetShortField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetShortField.asFunction< |
| int Function(JObjectPtr, JFieldIDPtr)>()(obj, fieldID); |
| } |
| |
| int GetIntField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetIntField.asFunction<int Function(JObjectPtr, JFieldIDPtr)>()( |
| obj, fieldID); |
| } |
| |
| int GetLongField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetLongField.asFunction<int Function(JObjectPtr, JFieldIDPtr)>()( |
| obj, fieldID); |
| } |
| |
| double GetFloatField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetFloatField.asFunction< |
| double Function(JObjectPtr, JFieldIDPtr)>()(obj, fieldID); |
| } |
| |
| double GetDoubleField(JObjectPtr obj, JFieldIDPtr fieldID) { |
| return ref.GetDoubleField.asFunction< |
| double Function(JObjectPtr, JFieldIDPtr)>()(obj, fieldID); |
| } |
| |
| void SetObjectField(JObjectPtr obj, JFieldIDPtr fieldID, JObjectPtr val) { |
| return ref.SetObjectField.asFunction< |
| void Function( |
| JObjectPtr, JFieldIDPtr, JObjectPtr)>()(obj, fieldID, val); |
| } |
| |
| void SetBooleanField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetBooleanField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetByteField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetByteField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetCharField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetCharField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetShortField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetShortField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetIntField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetIntField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetLongField(JObjectPtr obj, JFieldIDPtr fieldID, int val) { |
| return ref.SetLongField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, int)>()(obj, fieldID, val); |
| } |
| |
| void SetFloatField(JObjectPtr obj, JFieldIDPtr fieldID, double val) { |
| return ref.SetFloatField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, double)>()(obj, fieldID, val); |
| } |
| |
| void SetDoubleField(JObjectPtr obj, JFieldIDPtr fieldID, double val) { |
| return ref.SetDoubleField.asFunction< |
| void Function(JObjectPtr, JFieldIDPtr, double)>()(obj, fieldID, val); |
| } |
| |
| JMethodIDPtr GetStaticMethodID( |
| JClassPtr clazz, ffi.Pointer<ffi.Char> name, ffi.Pointer<ffi.Char> sig) { |
| return ref.GetStaticMethodID.asFunction< |
| JMethodIDPtr Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(clazz, name, sig); |
| } |
| |
| JObjectPtr CallStaticObjectMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticObjectMethod.asFunction< |
| JObjectPtr Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| JObjectPtr CallStaticObjectMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticObjectMethodA.asFunction< |
| JObjectPtr Function(JClassPtr, JMethodIDPtr, |
| ffi.Pointer<JValue>)>()(clazz, methodID, args); |
| } |
| |
| int CallStaticBooleanMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticBooleanMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticBooleanMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticBooleanMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| int CallStaticByteMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticByteMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticByteMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticByteMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| int CallStaticCharMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticCharMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticCharMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticCharMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| int CallStaticShortMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticShortMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticShortMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticShortMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| int CallStaticIntMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticIntMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticIntMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticIntMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| int CallStaticLongMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticLongMethod.asFunction< |
| int Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| int CallStaticLongMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticLongMethodA.asFunction< |
| int Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| double CallStaticFloatMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticFloatMethod.asFunction< |
| double Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| double CallStaticFloatMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticFloatMethodA.asFunction< |
| double Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| double CallStaticDoubleMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticDoubleMethod.asFunction< |
| double Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| double CallStaticDoubleMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticDoubleMethodA.asFunction< |
| double Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| void CallStaticVoidMethod(JClassPtr arg1, JMethodIDPtr arg2) { |
| return ref.CallStaticVoidMethod.asFunction< |
| void Function(JClassPtr, JMethodIDPtr)>()(arg1, arg2); |
| } |
| |
| void CallStaticVoidMethodA( |
| JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer<JValue> args) { |
| return ref.CallStaticVoidMethodA.asFunction< |
| void Function(JClassPtr, JMethodIDPtr, ffi.Pointer<JValue>)>()( |
| clazz, methodID, args); |
| } |
| |
| JFieldIDPtr GetStaticFieldID( |
| JClassPtr clazz, ffi.Pointer<ffi.Char> name, ffi.Pointer<ffi.Char> sig) { |
| return ref.GetStaticFieldID.asFunction< |
| JFieldIDPtr Function(JClassPtr, ffi.Pointer<ffi.Char>, |
| ffi.Pointer<ffi.Char>)>()(clazz, name, sig); |
| } |
| |
| JObjectPtr GetStaticObjectField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticObjectField.asFunction< |
| JObjectPtr Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticBooleanField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticBooleanField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticByteField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticByteField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticCharField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticCharField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticShortField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticShortField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticIntField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticIntField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| int GetStaticLongField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticLongField.asFunction< |
| int Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| double GetStaticFloatField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticFloatField.asFunction< |
| double Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| double GetStaticDoubleField(JClassPtr clazz, JFieldIDPtr fieldID) { |
| return ref.GetStaticDoubleField.asFunction< |
| double Function(JClassPtr, JFieldIDPtr)>()(clazz, fieldID); |
| } |
| |
| void SetStaticObjectField( |
| JClassPtr clazz, JFieldIDPtr fieldID, JObjectPtr val) { |
| return ref.SetStaticObjectField.asFunction< |
| void Function( |
| JClassPtr, JFieldIDPtr, JObjectPtr)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticBooleanField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticBooleanField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticByteField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticByteField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticCharField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticCharField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticShortField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticShortField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticIntField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticIntField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticLongField(JClassPtr clazz, JFieldIDPtr fieldID, int val) { |
| return ref.SetStaticLongField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, int)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticFloatField(JClassPtr clazz, JFieldIDPtr fieldID, double val) { |
| return ref.SetStaticFloatField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, double)>()(clazz, fieldID, val); |
| } |
| |
| void SetStaticDoubleField(JClassPtr clazz, JFieldIDPtr fieldID, double val) { |
| return ref.SetStaticDoubleField.asFunction< |
| void Function(JClassPtr, JFieldIDPtr, double)>()(clazz, fieldID, val); |
| } |
| |
| JStringPtr NewString(ffi.Pointer<JCharMarker> unicodeChars, int len) { |
| return ref.NewString.asFunction< |
| JStringPtr Function( |
| ffi.Pointer<JCharMarker>, int)>()(unicodeChars, len); |
| } |
| |
| int GetStringLength(JStringPtr string) { |
| return ref.GetStringLength.asFunction<int Function(JStringPtr)>()(string); |
| } |
| |
| ffi.Pointer<JCharMarker> GetStringChars( |
| JStringPtr string, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetStringChars.asFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>()(string, isCopy); |
| } |
| |
| void ReleaseStringChars(JStringPtr string, ffi.Pointer<JCharMarker> isCopy) { |
| return ref.ReleaseStringChars.asFunction< |
| void Function(JStringPtr, ffi.Pointer<JCharMarker>)>()(string, isCopy); |
| } |
| |
| JStringPtr NewStringUTF(ffi.Pointer<ffi.Char> bytes) { |
| return ref.NewStringUTF.asFunction< |
| JStringPtr Function(ffi.Pointer<ffi.Char>)>()(bytes); |
| } |
| |
| int GetStringUTFLength(JStringPtr string) { |
| return ref.GetStringUTFLength.asFunction<int Function(JStringPtr)>()( |
| string); |
| } |
| |
| ffi.Pointer<ffi.Char> GetStringUTFChars( |
| JStringPtr string, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetStringUTFChars.asFunction< |
| ffi.Pointer<ffi.Char> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>()(string, isCopy); |
| } |
| |
| void ReleaseStringUTFChars(JStringPtr string, ffi.Pointer<ffi.Char> utf) { |
| return ref.ReleaseStringUTFChars.asFunction< |
| void Function(JStringPtr, ffi.Pointer<ffi.Char>)>()(string, utf); |
| } |
| |
| int GetArrayLength(JArrayPtr array) { |
| return ref.GetArrayLength.asFunction<int Function(JArrayPtr)>()(array); |
| } |
| |
| JObjectArrayPtr NewObjectArray( |
| int length, JClassPtr elementClass, JObjectPtr initialElement) { |
| return ref.NewObjectArray.asFunction< |
| JObjectArrayPtr Function(int, JClassPtr, JObjectPtr)>()( |
| length, elementClass, initialElement); |
| } |
| |
| JObjectPtr GetObjectArrayElement(JObjectArrayPtr array, int index) { |
| return ref.GetObjectArrayElement.asFunction< |
| JObjectPtr Function(JObjectArrayPtr, int)>()(array, index); |
| } |
| |
| void SetObjectArrayElement(JObjectArrayPtr array, int index, JObjectPtr val) { |
| return ref.SetObjectArrayElement.asFunction< |
| void Function(JObjectArrayPtr, int, JObjectPtr)>()(array, index, val); |
| } |
| |
| JBooleanArrayPtr NewBooleanArray(int length) { |
| return ref.NewBooleanArray.asFunction<JBooleanArrayPtr Function(int)>()( |
| length); |
| } |
| |
| JByteArrayPtr NewByteArray(int length) { |
| return ref.NewByteArray.asFunction<JByteArrayPtr Function(int)>()(length); |
| } |
| |
| JCharArrayPtr NewCharArray(int length) { |
| return ref.NewCharArray.asFunction<JCharArrayPtr Function(int)>()(length); |
| } |
| |
| JShortArrayPtr NewShortArray(int length) { |
| return ref.NewShortArray.asFunction<JShortArrayPtr Function(int)>()(length); |
| } |
| |
| JIntArrayPtr NewIntArray(int length) { |
| return ref.NewIntArray.asFunction<JIntArrayPtr Function(int)>()(length); |
| } |
| |
| JLongArrayPtr NewLongArray(int length) { |
| return ref.NewLongArray.asFunction<JLongArrayPtr Function(int)>()(length); |
| } |
| |
| JFloatArrayPtr NewFloatArray(int length) { |
| return ref.NewFloatArray.asFunction<JFloatArrayPtr Function(int)>()(length); |
| } |
| |
| JDoubleArrayPtr NewDoubleArray(int length) { |
| return ref.NewDoubleArray.asFunction<JDoubleArrayPtr Function(int)>()( |
| length); |
| } |
| |
| ffi.Pointer<JBooleanMarker> GetBooleanArrayElements( |
| JBooleanArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetBooleanArrayElements.asFunction< |
| ffi.Pointer<JBooleanMarker> Function( |
| JBooleanArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JByteMarker> GetByteArrayElements( |
| JByteArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetByteArrayElements.asFunction< |
| ffi.Pointer<JByteMarker> Function( |
| JByteArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JCharMarker> GetCharArrayElements( |
| JCharArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetCharArrayElements.asFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JCharArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JShortMarker> GetShortArrayElements( |
| JShortArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetShortArrayElements.asFunction< |
| ffi.Pointer<JShortMarker> Function( |
| JShortArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JIntMarker> GetIntArrayElements( |
| JIntArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetIntArrayElements.asFunction< |
| ffi.Pointer<JIntMarker> Function( |
| JIntArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JLongMarker> GetLongArrayElements( |
| JLongArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetLongArrayElements.asFunction< |
| ffi.Pointer<JLongMarker> Function( |
| JLongArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JFloatMarker> GetFloatArrayElements( |
| JFloatArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetFloatArrayElements.asFunction< |
| ffi.Pointer<JFloatMarker> Function( |
| JFloatArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| ffi.Pointer<JDoubleMarker> GetDoubleArrayElements( |
| JDoubleArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetDoubleArrayElements.asFunction< |
| ffi.Pointer<JDoubleMarker> Function( |
| JDoubleArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| void ReleaseBooleanArrayElements( |
| JBooleanArrayPtr array, ffi.Pointer<JBooleanMarker> elems, int mode) { |
| return ref.ReleaseBooleanArrayElements.asFunction< |
| void Function(JBooleanArrayPtr, ffi.Pointer<JBooleanMarker>, |
| int)>()(array, elems, mode); |
| } |
| |
| void ReleaseByteArrayElements( |
| JByteArrayPtr array, ffi.Pointer<JByteMarker> elems, int mode) { |
| return ref.ReleaseByteArrayElements.asFunction< |
| void Function(JByteArrayPtr, ffi.Pointer<JByteMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void ReleaseCharArrayElements( |
| JCharArrayPtr array, ffi.Pointer<JCharMarker> elems, int mode) { |
| return ref.ReleaseCharArrayElements.asFunction< |
| void Function(JCharArrayPtr, ffi.Pointer<JCharMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void ReleaseShortArrayElements( |
| JShortArrayPtr array, ffi.Pointer<JShortMarker> elems, int mode) { |
| return ref.ReleaseShortArrayElements.asFunction< |
| void Function(JShortArrayPtr, ffi.Pointer<JShortMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void ReleaseIntArrayElements( |
| JIntArrayPtr array, ffi.Pointer<JIntMarker> elems, int mode) { |
| return ref.ReleaseIntArrayElements.asFunction< |
| void Function( |
| JIntArrayPtr, ffi.Pointer<JIntMarker>, int)>()(array, elems, mode); |
| } |
| |
| void ReleaseLongArrayElements( |
| JLongArrayPtr array, ffi.Pointer<JLongMarker> elems, int mode) { |
| return ref.ReleaseLongArrayElements.asFunction< |
| void Function(JLongArrayPtr, ffi.Pointer<JLongMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void ReleaseFloatArrayElements( |
| JFloatArrayPtr array, ffi.Pointer<JFloatMarker> elems, int mode) { |
| return ref.ReleaseFloatArrayElements.asFunction< |
| void Function(JFloatArrayPtr, ffi.Pointer<JFloatMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void ReleaseDoubleArrayElements( |
| JDoubleArrayPtr array, ffi.Pointer<JDoubleMarker> elems, int mode) { |
| return ref.ReleaseDoubleArrayElements.asFunction< |
| void Function(JDoubleArrayPtr, ffi.Pointer<JDoubleMarker>, int)>()( |
| array, elems, mode); |
| } |
| |
| void GetBooleanArrayRegion(JBooleanArrayPtr array, int start, int len, |
| ffi.Pointer<JBooleanMarker> buf) { |
| return ref.GetBooleanArrayRegion.asFunction< |
| void Function(JBooleanArrayPtr, int, int, |
| ffi.Pointer<JBooleanMarker>)>()(array, start, len, buf); |
| } |
| |
| void GetByteArrayRegion( |
| JByteArrayPtr array, int start, int len, ffi.Pointer<JByteMarker> buf) { |
| return ref.GetByteArrayRegion.asFunction< |
| void Function(JByteArrayPtr, int, int, ffi.Pointer<JByteMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void GetCharArrayRegion( |
| JCharArrayPtr array, int start, int len, ffi.Pointer<JCharMarker> buf) { |
| return ref.GetCharArrayRegion.asFunction< |
| void Function(JCharArrayPtr, int, int, ffi.Pointer<JCharMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void GetShortArrayRegion( |
| JShortArrayPtr array, int start, int len, ffi.Pointer<JShortMarker> buf) { |
| return ref.GetShortArrayRegion.asFunction< |
| void Function(JShortArrayPtr, int, int, |
| ffi.Pointer<JShortMarker>)>()(array, start, len, buf); |
| } |
| |
| void GetIntArrayRegion( |
| JIntArrayPtr array, int start, int len, ffi.Pointer<JIntMarker> buf) { |
| return ref.GetIntArrayRegion.asFunction< |
| void Function(JIntArrayPtr, int, int, ffi.Pointer<JIntMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void GetLongArrayRegion( |
| JLongArrayPtr array, int start, int len, ffi.Pointer<JLongMarker> buf) { |
| return ref.GetLongArrayRegion.asFunction< |
| void Function(JLongArrayPtr, int, int, ffi.Pointer<JLongMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void GetFloatArrayRegion( |
| JFloatArrayPtr array, int start, int len, ffi.Pointer<JFloatMarker> buf) { |
| return ref.GetFloatArrayRegion.asFunction< |
| void Function(JFloatArrayPtr, int, int, |
| ffi.Pointer<JFloatMarker>)>()(array, start, len, buf); |
| } |
| |
| void GetDoubleArrayRegion(JDoubleArrayPtr array, int start, int len, |
| ffi.Pointer<JDoubleMarker> buf) { |
| return ref.GetDoubleArrayRegion.asFunction< |
| void Function(JDoubleArrayPtr, int, int, |
| ffi.Pointer<JDoubleMarker>)>()(array, start, len, buf); |
| } |
| |
| void SetBooleanArrayRegion(JBooleanArrayPtr array, int start, int len, |
| ffi.Pointer<JBooleanMarker> buf) { |
| return ref.SetBooleanArrayRegion.asFunction< |
| void Function(JBooleanArrayPtr, int, int, |
| ffi.Pointer<JBooleanMarker>)>()(array, start, len, buf); |
| } |
| |
| void SetByteArrayRegion( |
| JByteArrayPtr array, int start, int len, ffi.Pointer<JByteMarker> buf) { |
| return ref.SetByteArrayRegion.asFunction< |
| void Function(JByteArrayPtr, int, int, ffi.Pointer<JByteMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void SetCharArrayRegion( |
| JCharArrayPtr array, int start, int len, ffi.Pointer<JCharMarker> buf) { |
| return ref.SetCharArrayRegion.asFunction< |
| void Function(JCharArrayPtr, int, int, ffi.Pointer<JCharMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void SetShortArrayRegion( |
| JShortArrayPtr array, int start, int len, ffi.Pointer<JShortMarker> buf) { |
| return ref.SetShortArrayRegion.asFunction< |
| void Function(JShortArrayPtr, int, int, |
| ffi.Pointer<JShortMarker>)>()(array, start, len, buf); |
| } |
| |
| void SetIntArrayRegion( |
| JIntArrayPtr array, int start, int len, ffi.Pointer<JIntMarker> buf) { |
| return ref.SetIntArrayRegion.asFunction< |
| void Function(JIntArrayPtr, int, int, ffi.Pointer<JIntMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void SetLongArrayRegion( |
| JLongArrayPtr array, int start, int len, ffi.Pointer<JLongMarker> buf) { |
| return ref.SetLongArrayRegion.asFunction< |
| void Function(JLongArrayPtr, int, int, ffi.Pointer<JLongMarker>)>()( |
| array, start, len, buf); |
| } |
| |
| void SetFloatArrayRegion( |
| JFloatArrayPtr array, int start, int len, ffi.Pointer<JFloatMarker> buf) { |
| return ref.SetFloatArrayRegion.asFunction< |
| void Function(JFloatArrayPtr, int, int, |
| ffi.Pointer<JFloatMarker>)>()(array, start, len, buf); |
| } |
| |
| void SetDoubleArrayRegion(JDoubleArrayPtr array, int start, int len, |
| ffi.Pointer<JDoubleMarker> buf) { |
| return ref.SetDoubleArrayRegion.asFunction< |
| void Function(JDoubleArrayPtr, int, int, |
| ffi.Pointer<JDoubleMarker>)>()(array, start, len, buf); |
| } |
| |
| int RegisterNatives( |
| JClassPtr clazz, ffi.Pointer<JNINativeMethod> methods, int nMethods) { |
| return ref.RegisterNatives.asFunction< |
| int Function(JClassPtr, ffi.Pointer<JNINativeMethod>, int)>()( |
| clazz, methods, nMethods); |
| } |
| |
| int UnregisterNatives(JClassPtr clazz) { |
| return ref.UnregisterNatives.asFunction<int Function(JClassPtr)>()(clazz); |
| } |
| |
| int MonitorEnter(JObjectPtr obj) { |
| return ref.MonitorEnter.asFunction<int Function(JObjectPtr)>()(obj); |
| } |
| |
| int MonitorExit(JObjectPtr obj) { |
| return ref.MonitorExit.asFunction<int Function(JObjectPtr)>()(obj); |
| } |
| |
| int GetJavaVM(ffi.Pointer<ffi.Pointer<JavaVM>> vm) { |
| return ref.GetJavaVM.asFunction< |
| int Function(ffi.Pointer<ffi.Pointer<JavaVM>>)>()(vm); |
| } |
| |
| void GetStringRegion( |
| JStringPtr str, int start, int len, ffi.Pointer<JCharMarker> buf) { |
| return ref.GetStringRegion.asFunction< |
| void Function(JStringPtr, int, int, ffi.Pointer<JCharMarker>)>()( |
| str, start, len, buf); |
| } |
| |
| void GetStringUTFRegion( |
| JStringPtr str, int start, int len, ffi.Pointer<ffi.Char> buf) { |
| return ref.GetStringUTFRegion.asFunction< |
| void Function(JStringPtr, int, int, ffi.Pointer<ffi.Char>)>()( |
| str, start, len, buf); |
| } |
| |
| ffi.Pointer<ffi.Void> GetPrimitiveArrayCritical( |
| JArrayPtr array, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetPrimitiveArrayCritical.asFunction< |
| ffi.Pointer<ffi.Void> Function( |
| JArrayPtr, ffi.Pointer<JBooleanMarker>)>()(array, isCopy); |
| } |
| |
| void ReleasePrimitiveArrayCritical( |
| JArrayPtr array, ffi.Pointer<ffi.Void> carray, int mode) { |
| return ref.ReleasePrimitiveArrayCritical.asFunction< |
| void Function( |
| JArrayPtr, ffi.Pointer<ffi.Void>, int)>()(array, carray, mode); |
| } |
| |
| ffi.Pointer<JCharMarker> GetStringCritical( |
| JStringPtr str, ffi.Pointer<JBooleanMarker> isCopy) { |
| return ref.GetStringCritical.asFunction< |
| ffi.Pointer<JCharMarker> Function( |
| JStringPtr, ffi.Pointer<JBooleanMarker>)>()(str, isCopy); |
| } |
| |
| void ReleaseStringCritical(JStringPtr str, ffi.Pointer<JCharMarker> carray) { |
| return ref.ReleaseStringCritical.asFunction< |
| void Function(JStringPtr, ffi.Pointer<JCharMarker>)>()(str, carray); |
| } |
| |
| JWeakPtr NewWeakGlobalRef(JObjectPtr obj) { |
| return ref.NewWeakGlobalRef.asFunction<JWeakPtr Function(JObjectPtr)>()( |
| obj); |
| } |
| |
| void DeleteWeakGlobalRef(JWeakPtr obj) { |
| return ref.DeleteWeakGlobalRef.asFunction<void Function(JWeakPtr)>()(obj); |
| } |
| |
| int ExceptionCheck() { |
| return ref.ExceptionCheck.asFunction<int Function()>()(); |
| } |
| |
| JObjectPtr NewDirectByteBuffer(ffi.Pointer<ffi.Void> address, int capacity) { |
| return ref.NewDirectByteBuffer.asFunction< |
| JObjectPtr Function(ffi.Pointer<ffi.Void>, int)>()(address, capacity); |
| } |
| |
| ffi.Pointer<ffi.Void> GetDirectBufferAddress(JObjectPtr buf) { |
| return ref.GetDirectBufferAddress.asFunction< |
| ffi.Pointer<ffi.Void> Function(JObjectPtr)>()(buf); |
| } |
| |
| int GetDirectBufferCapacity(JObjectPtr buf) { |
| return ref.GetDirectBufferCapacity.asFunction<int Function(JObjectPtr)>()( |
| buf); |
| } |
| |
| int GetObjectRefType(JObjectPtr obj) { |
| return ref.GetObjectRefType.asFunction<int Function(JObjectPtr)>()(obj); |
| } |
| } |
| |
| const int JNI_FALSE = 0; |
| |
| const int JNI_TRUE = 1; |
| |
| const int JNI_VERSION_1_1 = 65537; |
| |
| const int JNI_VERSION_1_2 = 65538; |
| |
| const int JNI_VERSION_1_4 = 65540; |
| |
| const int JNI_VERSION_1_6 = 65542; |
| |
| const int JNI_OK = 0; |
| |
| const int JNI_ERR = -1; |
| |
| const int JNI_EDETACHED = -2; |
| |
| const int JNI_EVERSION = -3; |
| |
| const int JNI_ENOMEM = -4; |
| |
| const int JNI_EEXIST = -5; |
| |
| const int JNI_EINVAL = -6; |
| |
| const int JNI_COMMIT = 1; |
| |
| const int JNI_ABORT = 2; |