diff --git a/pkgs/jni/CHANGELOG.md b/pkgs/jni/CHANGELOG.md index 31db3e2822..61869740ed 100644 --- a/pkgs/jni/CHANGELOG.md +++ b/pkgs/jni/CHANGELOG.md @@ -1,7 +1,33 @@ ## 0.8.0-wip -- **Breaking Change**: `JObject.reference` now returns a `JReference` instead of - `Pointer`. +- **Breaking Change** ([#981](https://github.com/dart-lang/native/issues/981)): + + - `JObject.reference` now returns a `JReference` instead of `Pointer`. + - `.fromRef` constructors are now called `.fromReference` and they take a + `JReference` instead of `Pointer`. + - `JObject` reflective field retrieving and method calling methods are + removed. Use `JClass` API instead. + - The following `Jni.accessors` methods have been removed: + + - `getClassOf` + - `getMethodIDOf` + - `getStaticMethodIDOf` + - `getFieldIDOf` + - `getStaticFieldIDOf` + - `newObjectWithArgs` + - `callMethodWithArgs` + - `callStaticMethodWithArgs` + + Instead use the `JClass` API. + + - `Jni.findJClass` is replaced with `JClass.forName(String name)` + - `JClass` has been refactored. Instead of directly calling methods, getting + and setting fields, use `JClass.instanceMethodId`, `JClass.staticMethodId`, + `JClass.constructorId`, `JClass.instanceFieldId`, and `JClass.staticFieldId` + to first get access to the member. + - Renamed `JObject.getClass()` to `JObject.jClass`. + - Removed `Jni.deleteAllRefs`. + - **Breaking Change** ([#548](https://github.com/dart-lang/native/issues/548)): Converted various `Exception`s into `Error`s: - `UseAfterReleaseException` -> `UseAfterReleaseError` @@ -13,19 +39,19 @@ - `JvmExistsException` -> `JniVmExistsError` - `NoJvmInstanceException` -> `NoJvmInstanceError` - **Breaking Change**: Removed `InvalidJStringException`. -- **Breaking Change**: The default return `callType` of type parameter `int` for - methods such as `JObject.callMethodByName` is now Java's `long` instead - of `int` to be consistent with the way arguments work. - **Breaking Change**: `JType` is now `sealed`. - **Breaking Change**: Primitive types and their type classes are now `final`. - **Breaking Change**: `JArray.filled` now uses the generated type class of the `fill` object and not its Java runtime type. ## 0.7.2 + - Fixed a bug where reading non-null terminated strings would overflow. ## 0.7.1 -- Removed macOS Flutter plugin until package:jni supports it ([#780](https://github.com/dart-lang/native/issues/780)). + +- Removed macOS Flutter plugin until package:jni supports it + ([#780](https://github.com/dart-lang/native/issues/780)). ## 0.7.0 diff --git a/pkgs/jni/README.md b/pkgs/jni/README.md index e6e00b74d8..7156d897ac 100644 --- a/pkgs/jni/README.md +++ b/pkgs/jni/README.md @@ -21,3 +21,13 @@ Apart from being the base library for code generated by `jnigen` this can also b The test/ directory contains files with comments explaining the basics of this module, and the example/ directory contains a flutter example which also touches some Android-specifics. Using this library assumes some familiarity with JNI - it's threading model and object references, among other things. + +## Migrating to 0.8.0 + +Check the [changelog](https://github.com/dart-lang/native/blob/main/pkgs/jni/CHANGELOG.md#080-wip). + +The API for standalone use of `package:jni` (without `package:jnigen`) has +changed to use `JClass.forName` for finding classes. Find the methods and fields +by accessing them from the retrieved `JClass`. For example find an instance +method with a name and a signature using `jClass.instanceMethodId`. Then you can +`call` the resulting `JInstanceMethodId` to call the instance method. diff --git a/pkgs/jni/example/lib/main.dart b/pkgs/jni/example/lib/main.dart index 4c73693f33..d0e357144b 100644 --- a/pkgs/jni/example/lib/main.dart +++ b/pkgs/jni/example/lib/main.dart @@ -25,7 +25,8 @@ String toJavaStringUsingEnv(int n) => using((arena) { i.ref.i = n; final res = env.CallStaticObjectMethodA(cls, mId, i); final str = env.toDartString(res); - env.deleteAllRefs([res, cls]); + env.DeleteGlobalRef(res); + env.DeleteGlobalRef(cls); return str; }); @@ -37,21 +38,25 @@ int randomUsingEnv(int n) => using((arena) { final random = env.NewObject(randomCls, ctor); final nextInt = env.GetMethodID(randomCls, "nextInt".toNativeChars(arena), "(I)I".toNativeChars(arena)); - final res = env.CallIntMethodA(random, nextInt, Jni.jvalues([n])); - env.deleteAllRefs([randomCls, random]); + final res = + env.CallIntMethodA(random, nextInt, toJValues([n], allocator: arena)); + env.DeleteGlobalRef(randomCls); + env.DeleteGlobalRef(random); return res; }); double randomDouble() { - final math = Jni.findJClass("java/lang/Math"); - final random = math.callStaticMethodByName("random", "()D", []); + final math = JClass.forName("java/lang/Math"); + final random = + math.staticMethodId("random", "()D").call(math, const jdoubleType(), []); math.release(); return random; } int uptime() { - return Jni.findJClass("android/os/SystemClock").use( - (systemClock) => systemClock.callStaticMethodByName( - "uptimeMillis", "()J", [], JniCallType.longType), + return JClass.forName("android/os/SystemClock").use( + (systemClock) => systemClock + .staticMethodId("uptimeMillis", "()J") + .call(systemClock, const jlongType(), []), ); } @@ -62,8 +67,9 @@ String backAndForth() { } void quit() { - JObject.fromRef(Jni.getCurrentActivity()) - .use((ac) => ac.callMethodByName("finish", "()V", [])); + JObject.fromReference(Jni.getCurrentActivity()).use((ac) => ac.jClass + .instanceMethodId("finish", "()V") + .call(ac, const jvoidType(), [])); } void showToast(String text) { @@ -74,18 +80,21 @@ void showToast(String text) { // In this example, Toaster class wraps android.widget.Toast so that it // can be called from any thread. See // android/app/src/main/java/com/github/dart_lang/jni_example/Toaster.java - Jni.invokeStaticMethod( - "com/github/dart_lang/jni_example/Toaster", - "makeText", - "(Landroid/app/Activity;Landroid/content/Context;" - "Ljava/lang/CharSequence;I)" - "Lcom/github/dart_lang/jni_example/Toaster;", - [ - Jni.getCurrentActivity(), - Jni.getCachedApplicationContext(), - "😀", - 0, - ]).callMethodByName("show", "()V", []); + final toasterClass = + JClass.forName('com/github/dart_lang/jni_example/Toaster'); + final makeText = toasterClass.staticMethodId( + 'makeText', + '(Landroid/app/Activity;Landroid/content/Context;' + 'Ljava/lang/CharSequence;I)' + 'Lcom/github/dart_lang/jni_example/Toaster;'); + final toaster = makeText.call(toasterClass, const JObjectType(), [ + Jni.getCurrentActivity(), + Jni.getCachedApplicationContext(), + '😀', + 0, + ]); + final show = toasterClass.instanceMethodId('show', '()V'); + show(toaster, const jvoidType(), []); } void main() { @@ -103,13 +112,14 @@ void main() { Example("Back and forth string conversion", () => backAndForth()), Example( "Device name", - () => Jni.retrieveStaticField( - "android/os/Build", "DEVICE", "Ljava/lang/String;")), + () => JClass.forName("android/os/Build") + .staticFieldId("DEVICE", const JStringType().signature)), Example( "Package name", - () => JObject.fromRef(Jni.getCurrentActivity()).use((activity) => - activity.callMethodByName( - "getPackageName", "()Ljava/lang/String;", [])), + () => JObject.fromReference(Jni.getCurrentActivity()).use((activity) => + activity.jClass + .instanceMethodId("getPackageName", "()Ljava/lang/String;") + .call(activity, JString.type, [])), ), Example("Show toast", () => showToast("Hello from JNI!"), runInitially: false), diff --git a/pkgs/jni/example/pubspec.lock b/pkgs/jni/example/pubspec.lock index 9a5a8747f9..0fb91b3e2f 100644 --- a/pkgs/jni/example/pubspec.lock +++ b/pkgs/jni/example/pubspec.lock @@ -213,26 +213,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: cdd14e3836065a1f6302a236ec8b5f700695c803c57ae11a1c84df31e6bcf831 + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" url: "https://pub.dev" source: hosted - version: "10.0.3" + version: "10.0.4" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "9b2ef90589911d665277464e0482b209d39882dffaaf4ef69a3561a3354b2ebc" + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: fd3cd66cb2bcd7b50dcd3b413af49d78051f809c8b3f6e047962765c15a0d23d + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "3.0.0" + version: "3.0.1" lints: dependency: transitive description: @@ -269,10 +269,10 @@ packages: dependency: transitive description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.12.0" mime: dependency: transitive description: diff --git a/pkgs/jni/lib/internal_helpers_for_jnigen.dart b/pkgs/jni/lib/internal_helpers_for_jnigen.dart index 257b0c25d1..582ee5c327 100644 --- a/pkgs/jni/lib/internal_helpers_for_jnigen.dart +++ b/pkgs/jni/lib/internal_helpers_for_jnigen.dart @@ -8,5 +8,6 @@ library internal_helpers_for_jnigen; export 'src/accessors.dart'; export 'src/jni.dart' show ProtectedJniExtensions; +export 'src/types.dart' show referenceType; export 'src/jreference.dart'; export 'src/method_invocation.dart'; diff --git a/pkgs/jni/lib/jni.dart b/pkgs/jni/lib/jni.dart index 62f3b2988e..f13fc64f89 100644 --- a/pkgs/jni/lib/jni.dart +++ b/pkgs/jni/lib/jni.dart @@ -60,19 +60,19 @@ /// This library provides classes and functions for JNI interop from Dart. library jni; +export 'dart:ffi' show nullptr; + +export 'package:ffi/ffi.dart' show using, Arena; + export 'src/errors.dart'; -export 'src/jni.dart' hide ProtectedJniExtensions; -export 'src/jvalues.dart' hide JValueArgs, toJValues; -export 'src/types.dart'; export 'src/jarray.dart'; +export 'src/jni.dart' hide ProtectedJniExtensions; export 'src/jobject.dart'; - +export 'src/jreference.dart'; +export 'src/jvalues.dart'; export 'src/lang/lang.dart'; export 'src/nio/nio.dart'; -export 'src/util/util.dart'; - export 'src/third_party/generated_bindings.dart' hide JniBindings, JniEnv, JniEnv1, JniExceptionDetails; - -export 'package:ffi/ffi.dart' show using, Arena; -export 'dart:ffi' show nullptr; +export 'src/types.dart' hide referenceType; +export 'src/util/util.dart'; diff --git a/pkgs/jni/lib/src/accessors.dart b/pkgs/jni/lib/src/accessors.dart index e505b94704..f6e90303e4 100644 --- a/pkgs/jni/lib/src/accessors.dart +++ b/pkgs/jni/lib/src/accessors.dart @@ -3,13 +3,8 @@ // BSD-style license that can be found in the LICENSE file. import 'dart:ffi'; -import 'package:ffi/ffi.dart' show using; -import 'package:jni/src/jvalues.dart'; - -import 'errors.dart'; -import 'third_party/generated_bindings.dart'; -import 'jni.dart'; +import 'package:jni/jni.dart'; void _check(JThrowablePtr exception) { if (exception != nullptr) { @@ -55,11 +50,19 @@ extension JniResultMethods on JniResult { return value.d; } - JObjectPtr get object { + JObjectPtr get objectPointer { check(); return value.l; } + JReference get reference { + return JGlobalReference(objectPointer); + } + + T object(JObjType type) { + return type.fromReference(reference); + } + bool get boolean { check(); return value.z != 0; @@ -115,48 +118,4 @@ extension JniAccessorWrappers on JniAccessors { env.DeleteGlobalRef(details.stacktrace); throw JniException(message, stacktrace); } - - // TODO(PR): How to name these methods? These only wrap toNativeChars() - // so that generated bindings are less verbose. - JClassPtr getClassOf(String internalName) => - using((arena) => getClass(internalName.toNativeChars(arena))) - .checkedClassRef; - - JMethodIDPtr getMethodIDOf(JClassPtr cls, String name, String signature) => - using((arena) => getMethodID( - cls, name.toNativeChars(arena), signature.toNativeChars(arena))) - .methodID; - - JMethodIDPtr getStaticMethodIDOf( - JClassPtr cls, String name, String signature) => - using((arena) => getStaticMethodID( - cls, name.toNativeChars(arena), signature.toNativeChars(arena))) - .methodID; - - JFieldIDPtr getFieldIDOf(JClassPtr cls, String name, String signature) => - using((arena) => getFieldID( - cls, name.toNativeChars(arena), signature.toNativeChars(arena))) - .fieldID; - - JFieldIDPtr getStaticFieldIDOf( - JClassPtr cls, String name, String signature) => - using((arena) => getStaticFieldID( - cls, name.toNativeChars(arena), signature.toNativeChars(arena))) - .fieldID; - - JniResult newObjectWithArgs( - JClassPtr cls, JMethodIDPtr ctor, List args) => - using((arena) { - return newObject(cls, ctor, toJValues(args, allocator: arena)); - }); - - JniResult callMethodWithArgs( - JObjectPtr obj, JMethodIDPtr id, int callType, List args) => - using((arena) => - callMethod(obj, id, callType, toJValues(args, allocator: arena))); - - JniResult callStaticMethodWithArgs( - JClassPtr cls, JMethodIDPtr id, int callType, List args) => - using((arena) => callStaticMethod( - cls, id, callType, toJValues(args, allocator: arena))); } diff --git a/pkgs/jni/lib/src/errors.dart b/pkgs/jni/lib/src/errors.dart index 848d93eaa5..7507cdd810 100644 --- a/pkgs/jni/lib/src/errors.dart +++ b/pkgs/jni/lib/src/errors.dart @@ -85,35 +85,6 @@ final class NoJvmInstanceError extends Error { String toString() => 'No JNI instance is available'; } -// TODO(#395): Remove this when calltypes are removed. -extension on int { - static const _names = { - JniCallType.booleanType: 'bool', - JniCallType.byteType: 'byte', - JniCallType.shortType: 'short', - JniCallType.charType: 'char', - JniCallType.intType: 'int', - JniCallType.longType: 'long', - JniCallType.floatType: 'float', - JniCallType.doubleType: 'double', - JniCallType.objectType: 'object', - JniCallType.voidType: 'void', - }; - String str() => _names[this]!; -} - -// TODO(#395): Remove this when `JniCallType`s are removed. -final class InvalidCallTypeError extends Error { - final int type; - final Set allowed; - - InvalidCallTypeError(this.type, this.allowed); - - @override - String toString() => 'Invalid type for call ${type.str()}. ' - 'Allowed types are ${allowed.map((t) => t.str()).toSet()}'; -} - // TODO(#393): Remove this class in favor of `JThrowable`. class JniException implements Exception { /// Error message from Java exception. diff --git a/pkgs/jni/lib/src/jarray.dart b/pkgs/jni/lib/src/jarray.dart index bfccf96dc0..3404ceb495 100644 --- a/pkgs/jni/lib/src/jarray.dart +++ b/pkgs/jni/lib/src/jarray.dart @@ -8,15 +8,15 @@ import 'dart:ffi'; import 'package:collection/collection.dart'; import 'package:ffi/ffi.dart'; -import 'package:jni/src/accessors.dart'; +import 'package:jni/internal_helpers_for_jnigen.dart'; import 'package:jni/src/third_party/generated_bindings.dart'; import 'jni.dart'; import 'jobject.dart'; import 'types.dart'; -final class JArrayType extends JObjType> { - final JType elementType; +final class JArrayType extends JObjType> { + final JType elementType; const JArrayType(this.elementType); @@ -24,7 +24,8 @@ final class JArrayType extends JObjType> { String get signature => '[${elementType.signature}'; @override - JArray fromRef(Pointer ref) => JArray.fromRef(elementType, ref); + JArray fromReference(JReference reference) => + JArray.fromReference(elementType, reference); @override JObjType get superType => const JObjectType(); @@ -37,8 +38,8 @@ final class JArrayType extends JObjType> { @override bool operator ==(Object other) { - return other.runtimeType == (JArrayType) && - other is JArrayType && + return other.runtimeType == (JArrayType) && + other is JArrayType && elementType == other.elementType; } } @@ -54,13 +55,13 @@ class JArray extends JObject { JArrayType(innerType); /// Construct a new [JArray] with [reference] as its underlying reference. - JArray.fromRef(this.elementType, JArrayPtr reference) - : super.fromRef(reference); + JArray.fromReference(this.elementType, JReference reference) + : super.fromReference(reference); - /// Creates a [JArray] of the given length from the given [type]. + /// Creates a [JArray] of the given length from the given [elementType]. /// /// The [length] must be a non-negative integer. - factory JArray(JType type, int length) { + factory JArray(JType elementType, int length) { const primitiveCallTypes = { 'B': JniCallType.byteType, 'Z': JniCallType.booleanType, @@ -71,37 +72,45 @@ class JArray extends JObject { 'F': JniCallType.floatType, 'D': JniCallType.doubleType, }; - if (!primitiveCallTypes.containsKey(type.signature) && type is JObjType) { - final clazz = (type as JObjType).getClass(); - final array = JArray.fromRef( - type, - Jni.accessors - .newObjectArray(length, clazz.reference.pointer, nullptr) - .object, + if (!primitiveCallTypes.containsKey(elementType.signature) && + elementType is JObjType) { + final clazz = (elementType as JObjType).jClass; + final array = JArray.fromReference( + elementType, + JGlobalReference( + Jni.accessors + .newObjectArray(length, clazz.reference.pointer, nullptr) + .objectPointer, + ), ); clazz.release(); return array; } - return JArray.fromRef( - type, - Jni.accessors - .newPrimitiveArray(length, primitiveCallTypes[type.signature]!) - .object, + return JArray.fromReference( + elementType, + JGlobalReference( + Jni.accessors + .newPrimitiveArray( + length, primitiveCallTypes[elementType.signature]!) + .objectPointer, + ), ); } /// Creates a [JArray] of the given length with [fill] at each position. /// /// The [length] must be a non-negative integer. - static JArray filled(int length, E fill) { + static JArray<$E> filled<$E extends JObject>(int length, $E fill, + {JObjType<$E>? E}) { RangeError.checkNotNegative(length); - final clazz = fill.$type.getClass(); - final array = JArray.fromRef( - fill.$type as JObjType, - Jni.accessors + E ??= fill.$type as JObjType<$E>; + final clazz = E.jClass; + final array = JArray<$E>.fromReference( + E, + JGlobalReference(Jni.accessors .newObjectArray( length, clazz.reference.pointer, fill.reference.pointer) - .object, + .objectPointer), ); clazz.release(); return array; @@ -109,7 +118,7 @@ class JArray extends JObject { int? _length; - JniResult elementAt(int index, int type) { + JniResult _elementAt(int index, int type) { RangeError.checkValidIndex(index, this); return Jni.accessors.getArrayElement(reference.pointer, index, type); } @@ -134,7 +143,7 @@ extension NativeArray on JArray { extension BoolArray on JArray { bool operator [](int index) { - return elementAt(index, JniCallType.booleanType).boolean; + return _elementAt(index, JniCallType.booleanType).boolean; } void operator []=(int index, bool value) { @@ -161,7 +170,7 @@ extension BoolArray on JArray { extension ByteArray on JArray { int operator [](int index) { - return elementAt(index, JniCallType.byteType).byte; + return _elementAt(index, JniCallType.byteType).byte; } void operator []=(int index, int value) { @@ -189,7 +198,7 @@ extension ByteArray on JArray { extension CharArray on JArray { String operator [](int index) { return String.fromCharCode( - elementAt(index, JniCallType.charType).char, + _elementAt(index, JniCallType.charType).char, ); } @@ -217,7 +226,7 @@ extension CharArray on JArray { extension ShortArray on JArray { int operator [](int index) { - return elementAt(index, JniCallType.shortType).short; + return _elementAt(index, JniCallType.shortType).short; } void operator []=(int index, int value) { @@ -244,7 +253,7 @@ extension ShortArray on JArray { extension IntArray on JArray { int operator [](int index) { - return elementAt(index, JniCallType.intType).integer; + return _elementAt(index, JniCallType.intType).integer; } void operator []=(int index, int value) { @@ -271,7 +280,7 @@ extension IntArray on JArray { extension LongArray on JArray { int operator [](int index) { - return elementAt(index, JniCallType.longType).long; + return _elementAt(index, JniCallType.longType).long; } void operator []=(int index, int value) { @@ -298,7 +307,7 @@ extension LongArray on JArray { extension FloatArray on JArray { double operator [](int index) { - return elementAt(index, JniCallType.floatType).float; + return _elementAt(index, JniCallType.floatType).float; } void operator []=(int index, double value) { @@ -325,7 +334,7 @@ extension FloatArray on JArray { extension DoubleArray on JArray { double operator [](int index) { - return elementAt(index, JniCallType.doubleType).doubleFloat; + return _elementAt(index, JniCallType.doubleType).doubleFloat; } void operator []=(int index, double value) { @@ -352,8 +361,8 @@ extension DoubleArray on JArray { extension ObjectArray on JArray { T operator [](int index) { - return (elementType as JObjType) - .fromRef(elementAt(index, JniCallType.objectType).object); + return (elementType as JObjType).fromReference(JGlobalReference( + _elementAt(index, JniCallType.objectType).objectPointer)); } void operator []=(int index, T value) { diff --git a/pkgs/jni/lib/src/jclass.dart b/pkgs/jni/lib/src/jclass.dart new file mode 100644 index 0000000000..e6f731ffe0 --- /dev/null +++ b/pkgs/jni/lib/src/jclass.dart @@ -0,0 +1,154 @@ +// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +part of 'types.dart'; + +/// A high level wrapper over a JNI class reference. +/// +/// JClasses are objects of type `java.lang.Class`. +class JClass extends JObject { + /// Constructs a [JClass] with the underlying [reference]. + JClass.fromReference(JReference reference) : super.fromReference(reference); + + /// Constructs a [JClass] associated with the class or interface with + /// the given string name. + JClass.forName(String name) + : super.fromReference(using((arena) { + final cls = Jni.accessors.getClass(name.toNativeChars(arena)); + return JGlobalReference(cls.checkedClassRef); + })); + + JConstructorId constructorId(String signature) { + return JConstructorId._(this, signature); + } + + JInstanceMethodId instanceMethodId(String name, String signature) { + return JInstanceMethodId._(this, name, signature); + } + + JStaticMethodId staticMethodId(String name, String signature) { + return JStaticMethodId._(this, name, signature); + } + + JInstanceFieldId instanceFieldId(String name, String signature) { + return JInstanceFieldId._(this, name, signature); + } + + JStaticFieldId staticFieldId(String name, String signature) { + return JStaticFieldId._(this, name, signature); + } +} + +/// A thin wrapper over a [JFieldIDPtr] of an instance field. +extension type JInstanceFieldId._fromPointer(JFieldIDPtr pointer) { + JInstanceFieldId._(JClass jClass, String name, String signature) + : pointer = using((arena) => Jni.accessors + .getFieldID( + jClass.reference.pointer, + name.toNativeChars(arena), + signature.toNativeChars(arena), + ) + .fieldID); + + DartT get(JObject object, JAccessible type) { + return type._instanceGet(object.reference.pointer, this as JFieldIDPtr); + } + + void set( + JObject object, JAccessible type, DartT value) { + type._instanceSet(object.reference.pointer, this as JFieldIDPtr, value); + } +} + +/// A thin wrapper over a [JFieldIDPtr] of an static field. +extension type JStaticFieldId._fromPointer(JFieldIDPtr pointer) { + JStaticFieldId._(JClass jClass, String name, String signature) + : pointer = using((arena) => Jni.accessors + .getStaticFieldID( + jClass.reference.pointer, + name.toNativeChars(arena), + signature.toNativeChars(arena), + ) + .fieldID); + + DartT get(JClass jClass, JAccessible type) { + return type._staticGet(jClass.reference.pointer, this as JFieldIDPtr); + } + + void set( + JObject object, JAccessible type, DartT value) { + type._staticSet(object.reference.pointer, this as JFieldIDPtr, value); + } +} + +/// A thin wrapper over a [JMethodIDPtr] of an instance method. +extension type JInstanceMethodId._fromPointer(JMethodIDPtr pointer) { + JInstanceMethodId._( + JClass jClass, + String name, + String signature, + ) : pointer = using((arena) => Jni.accessors + .getMethodID( + jClass.reference.pointer, + name.toNativeChars(arena), + signature.toNativeChars(arena), + ) + .methodID); + + /// Calls the instance method on [object] with the given arguments. + DartT call( + JObject object, + JCallable returnType, + List args, + ) { + return using((arena) => returnType._instanceCall(object.reference.pointer, + this as JMethodIDPtr, toJValues(args, allocator: arena))); + } +} + +/// A thin wrapper over a [JMethodIDPtr] of a static mehtod. +extension type JStaticMethodId._fromPointer(JMethodIDPtr pointer) { + JStaticMethodId._( + JClass jClass, + String name, + String signature, + ) : pointer = using((arena) => Jni.accessors + .getStaticMethodID( + jClass.reference.pointer, + name.toNativeChars(arena), + signature.toNativeChars(arena), + ) + .methodID); + + /// Calls the static method on [jClass] with the given arguments. + DartT call( + JClass jClass, + JCallable returnType, + List args, + ) { + return using((arena) => returnType._staticCall(jClass.reference.pointer, + this as JMethodIDPtr, toJValues(args, allocator: arena))); + } +} + +/// A thin wrapper over a [JMethodIDPtr] of a constructor. +extension type JConstructorId._fromPointer(JMethodIDPtr pointer) { + JConstructorId._( + JClass jClass, + String signature, + ) : pointer = using((arena) => Jni.accessors + .getMethodID( + jClass.reference.pointer, + ''.toNativeChars(arena), + signature.toNativeChars(arena), + ) + .methodID); + + /// Constructs an instance of [jClass] with the given arguments. + DartT call(JClass jClass, + JConstructable returnType, List args) { + return using((arena) => returnType._newObject(jClass.reference.pointer, + this as JMethodIDPtr, toJValues(args, allocator: arena))); + } +} diff --git a/pkgs/jni/lib/src/jni.dart b/pkgs/jni/lib/src/jni.dart index b64f7bbd6a..c9e742c689 100644 --- a/pkgs/jni/lib/src/jni.dart +++ b/pkgs/jni/lib/src/jni.dart @@ -10,9 +10,8 @@ import 'package:ffi/ffi.dart'; import 'package:path/path.dart'; import 'errors.dart'; -import 'jobject.dart'; +import 'jreference.dart'; import 'third_party/generated_bindings.dart'; -import 'jvalues.dart'; import 'accessors.dart'; String _getLibraryFileName(String base) { @@ -193,80 +192,21 @@ abstract final class Jni { static final accessors = JniAccessors(_bindings.GetAccessors()); /// Returns current application context on Android. - static JObjectPtr getCachedApplicationContext() { - return _bindings.GetApplicationContext(); + static JReference getCachedApplicationContext() { + return JGlobalReference(_bindings.GetApplicationContext()); } - /// Returns current activity - static JObjectPtr getCurrentActivity() => _bindings.GetCurrentActivity(); + /// Returns current activity. + static JReference getCurrentActivity() => + JGlobalReference(_bindings.GetCurrentActivity()); /// Get the initial classLoader of the application. /// /// This is especially useful on Android, where /// JNI threads cannot access application classes using /// the usual `JniEnv.FindClass` method. - static JObjectPtr getApplicationClassLoader() => _bindings.GetClassLoader(); - - /// Returns class reference found through system-specific mechanism - static JClassPtr findClass(String qualifiedName) => using((arena) { - final cls = accessors.getClass(qualifiedName.toNativeChars(arena)); - return cls.checkedClassRef; - }); - - /// Returns class for [qualifiedName] found by platform-specific mechanism, - /// wrapped in a [JClass]. - static JClass findJClass(String qualifiedName) => - JClass.fromRef(findClass(qualifiedName)); - - /// Constructs an instance of class with given arguments. - /// - /// Use it when one instance is needed, but the constructor or class aren't - /// required themselves. - static JObject newInstance( - String qualifiedName, String ctorSignature, List args) { - final cls = findJClass(qualifiedName); - final ctor = cls.getCtorID(ctorSignature); - final obj = cls.newInstance(ctor, args); - cls.release(); - return obj; - } - - /// Converts passed arguments to JValue array. - /// - /// long, bool, double and JObject types are converted out of the box. - /// Wrap values in types such as [JValueInt] to convert to other primitive - /// types such as `int`, `short` and `char`. - static Pointer jvalues(List args, - {Allocator allocator = calloc}) { - return toJValues(args, allocator: allocator); - } - - /// Returns the value of static field identified by [fieldName] & [signature]. - /// - /// See [JObject.getField] for more explanations about [callType] and [T]. - static T retrieveStaticField( - String className, String fieldName, String signature, - [int? callType]) { - final cls = findJClass(className); - final result = cls.getStaticFieldByName(fieldName, signature, callType); - cls.release(); - return result; - } - - /// Calls static method identified by [methodName] and [signature] - /// on [className] with [args] as and [callType]. - /// - /// For more explanation on [args] and [callType], see [JObject.getField] - /// and [JObject.callMethod] respectively. - static T invokeStaticMethod( - String className, String methodName, String signature, List args, - [int? callType]) { - final cls = findJClass(className); - final result = - cls.callStaticMethodByName(methodName, signature, args, callType); - cls.release(); - return result; - } + static JReference getApplicationClassLoader() => + JGlobalReference(_bindings.GetClassLoader()); } typedef _SetJniGettersNativeType = Void Function(Pointer, Pointer); @@ -290,37 +230,39 @@ extension ProtectedJniExtensions on Jni { } /// Returns a new DartException. - static JObjectPtr newDartException(String message) { + static Pointer newDartException(String message) { return Jni._bindings .DartException__ctor(Jni.env.toJStringPtr(message)) - .object; + .objectPointer; } /// Returns a new PortContinuation. - static JObjectPtr newPortContinuation(ReceivePort port) { - return Jni._bindings - .PortContinuation__ctor(port.sendPort.nativePort) - .object; + static JReference newPortContinuation(ReceivePort port) { + return JGlobalReference( + Jni._bindings + .PortContinuation__ctor(port.sendPort.nativePort) + .objectPointer, + ); } /// Returns a new PortProxy for a class with the given [binaryName]. - static JObjectPtr newPortProxy( + static JReference newPortProxy( String binaryName, ReceivePort port, Pointer< NativeFunction< Pointer Function(Uint64, Pointer, Pointer)>> functionPtr) { - return Jni._bindings + return JGlobalReference(Jni._bindings .PortProxy__newInstance( Jni.env.toJStringPtr(binaryName), port.sendPort.nativePort, functionPtr.address, ) - .object; + .objectPointer); } - /// Returns the result of a callback.. + /// Returns the result of a callback. static void returnResult( Pointer result, JObjectPtr object) async { Jni._bindings.resultFor(result, object); @@ -357,13 +299,6 @@ extension AdditionalEnvMethods on GlobalJniEnv { } return result; }); - - /// Deletes all references in [refs]. - void deleteAllRefs(List refs) { - for (final ref in refs) { - DeleteGlobalRef(ref); - } - } } extension StringMethodsForJni on String { diff --git a/pkgs/jni/lib/src/jobject.dart b/pkgs/jni/lib/src/jobject.dart index cb68632360..0c0dba2369 100644 --- a/pkgs/jni/lib/src/jobject.dart +++ b/pkgs/jni/lib/src/jobject.dart @@ -7,17 +7,10 @@ import 'dart:ffi'; import 'package:ffi/ffi.dart'; import 'package:jni/internal_helpers_for_jnigen.dart'; -import 'errors.dart'; import 'jni.dart'; -import 'jvalues.dart'; import 'lang/jstring.dart'; -import 'third_party/generated_bindings.dart'; import 'types.dart'; -// This typedef is needed because void is a keyword and cannot be used in -// type switch like a regular type. -typedef _VoidType = void; - final class JObjectType extends JObjType { const JObjectType(); @@ -25,7 +18,8 @@ final class JObjectType extends JObjType { String get signature => "Ljava/lang/Object;"; @override - JObject fromRef(Pointer ref) => JObject.fromRef(ref); + JObject fromReference(JReference reference) => + JObject.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -45,119 +39,6 @@ final class JObjectType extends JObjType { } } -Pointer _getID( - JniPointerResult Function( - Pointer ptr, Pointer name, Pointer sig) - f, - JReference ref, - String name, - String sig, -) { - final result = using((arena) => - f(ref.pointer, name.toNativeChars(arena), sig.toNativeChars(arena))); - if (result.exception != nullptr) { - Jni.accessors.throwException(result.exception); - } - return result.value.cast(); -} - -int _getCallType(int? callType, int defaultType, Set allowed) { - if (callType == null) return defaultType; - if (allowed.contains(callType)) return callType; - throw InvalidCallTypeError(callType, allowed); -} - -T _callOrGet(int? callType, JniResult Function(int) function) { - final int finalCallType; - late T result; - switch (T) { - case bool: - finalCallType = _getCallType( - callType, JniCallType.booleanType, {JniCallType.booleanType}); - result = function(finalCallType).boolean as T; - break; - case int: - finalCallType = _getCallType(callType, JniCallType.longType, { - JniCallType.byteType, - JniCallType.charType, - JniCallType.shortType, - JniCallType.intType, - JniCallType.longType, - }); - final jniResult = function(finalCallType); - switch (finalCallType) { - case JniCallType.byteType: - result = jniResult.byte as T; - break; - case JniCallType.shortType: - result = jniResult.short as T; - break; - case JniCallType.charType: - result = jniResult.char as T; - break; - case JniCallType.intType: - result = jniResult.integer as T; - break; - case JniCallType.longType: - result = jniResult.long as T; - break; - } - break; - case double: - finalCallType = _getCallType(callType, JniCallType.doubleType, - {JniCallType.floatType, JniCallType.doubleType}); - final jniResult = function(finalCallType); - switch (finalCallType) { - case JniCallType.floatType: - result = jniResult.float as T; - break; - case JniCallType.doubleType: - result = jniResult.doubleFloat as T; - break; - } - break; - case String: - case JObject: - case JString: - finalCallType = _getCallType( - callType, JniCallType.objectType, {JniCallType.objectType}); - final ref = function(finalCallType).object; - final ctor = T == String - ? (ref) => Jni.env.toDartString(ref, releaseOriginal: true) - : (T == JObject ? JObject.fromRef : JString.fromRef); - result = ctor(ref) as T; - break; - case const (Pointer): // JObjectPtr - finalCallType = _getCallType( - callType, JniCallType.objectType, {JniCallType.objectType}); - result = function(finalCallType).object as T; - break; - case _VoidType: - finalCallType = - _getCallType(callType, JniCallType.voidType, {JniCallType.voidType}); - function(finalCallType).check(); - result = null as T; - break; - case dynamic: - throw UnsupportedError("Return type not specified for JNI call"); - default: - throw UnsupportedError('Unknown type $T'); - } - return result; -} - -T _callMethod(int? callType, List args, - JniResult Function(int, Pointer) f) => - using((arena) { - final jArgs = JValueArgs(args, arena); - return _callOrGet(callType, (ct) => f(ct, jArgs.values)); - }); - -T _getField(int? callType, JniResult Function(int) f) { - final result = _callOrGet(callType, f); - return result; -} - /// A high-level wrapper for JNI global object reference. /// /// This is the base class for classes generated by `jnigen`. @@ -169,144 +50,24 @@ class JObject { /// The type which includes information such as the signature of this class. static const JObjType type = JObjectType(); - /// Construct a new [JObject] with [ref] as its underlying reference. - JObject.fromRef(JObjectPtr ref) : reference = JGlobalReference(ref); - - JClass? _jClass; - - JClass get _class { - return _jClass ??= getClass(); - } - - bool get isNull => reference.isNull; - - void release() { - _jClass?.release(); - reference.release(); - } + /// Constructs a [JObject] with the underlying [reference]. + JObject.fromReference(this.reference); /// Returns [JClass] corresponding to concrete class of this object. /// /// This may be a subclass of compile-time class. - JClass getClass() { + JClass get jClass { final classRef = Jni.env.GetObjectClass(reference.pointer); if (classRef == nullptr) { Jni.accessors.throwException(Jni.env.ExceptionOccurred()); } - return JClass.fromRef(classRef); - } - - /// Get [JFieldIDPtr] of instance field identified by [fieldName] & [signature]. - JFieldIDPtr getFieldID(String fieldName, String signature) { - return _getID( - Jni.accessors.getFieldID, _class.reference, fieldName, signature); - } - - /// Get [JFieldIDPtr] of static field identified by [fieldName] & [signature]. - JFieldIDPtr getStaticFieldID(String fieldName, String signature) { - return _getID( - Jni.accessors.getStaticFieldID, _class.reference, fieldName, signature); - } - - /// Get [JMethodIDPtr] of instance method [methodName] with [signature]. - JMethodIDPtr getMethodID(String methodName, String signature) { - return _getID( - Jni.accessors.getMethodID, _class.reference, methodName, signature); + return JClass.fromReference(JGlobalReference(classRef)); } - /// Get [JMethodIDPtr] of static method [methodName] with [signature]. - JMethodIDPtr getStaticMethodID(String methodName, String signature) { - return _getID(Jni.accessors.getStaticMethodID, _class.reference, - methodName, signature); - } - - /// Retrieve the value of the field using [fieldID]. - /// - /// [callType] determines the return type of the underlying JNI call made. - /// If the Java field is of `long` type, this must be [JniCallType.longType] and - /// so on. Default is chosen based on return type [T], which maps int -> int, - /// double -> double, void -> void, and JObject types to `Object`. - /// - /// If [T] is String or [JObject], required conversions are performed and - /// final value is returned. - T getField(JFieldIDPtr fieldID, [int? callType]) { - if (callType == JniCallType.voidType) { - throw ArgumentError("void is not a valid field type."); - } - return _getField(callType, - (ct) => Jni.accessors.getField(reference.pointer, fieldID, ct)); - } - - /// Get value of the field identified by [name] and [signature]. - /// - /// See [getField] for an explanation about [callType] parameter. - T getFieldByName(String name, String signature, [int? callType]) { - final id = getFieldID(name, signature); - return getField(id, callType); - } - - /// Get value of the static field using [fieldID]. - /// - /// See [getField] for an explanation about [callType] parameter. - T getStaticField(JFieldIDPtr fieldID, [int? callType]) { - if (callType == JniCallType.voidType) { - throw ArgumentError("void is not a valid field type."); - } - return _getField( - callType, - (ct) => Jni.accessors - .getStaticField(_class.reference.pointer, fieldID, ct)); - } - - /// Get value of the static field identified by [name] and [signature]. - /// - /// See [getField] for an explanation about [callType] parameter. - T getStaticFieldByName(String name, String signature, [int? callType]) { - final id = getStaticFieldID(name, signature); - return getStaticField(id, callType); - } - - /// Call the method using [methodID], - /// - /// [args] can consist of primitive types, JNI primitive wrappers such as - /// [JValueLong], strings, and subclasses of [JObject]. - /// - /// See [getField] for an explanation about [callType] and return type [T]. - T callMethod(JMethodIDPtr methodID, List args, [int? callType]) { - return _callMethod( - callType, - args, - (ct, jvs) => - Jni.accessors.callMethod(reference.pointer, methodID, ct, jvs)); - } - - /// Call instance method identified by [name] and [signature]. - /// - /// This implementation looks up the method and calls it using [callMethod]. - T callMethodByName(String name, String signature, List args, - [int? callType]) { - final id = getMethodID(name, signature); - return callMethod(id, args, callType); - } - - /// Call static method using [methodID]. See [callMethod] and [getField] for - /// more details about [args] and [callType]. - T callStaticMethod(JMethodIDPtr methodID, List args, - [int? callType]) { - return _callMethod( - callType, - args, - (ct, jvs) => Jni.accessors - .callStaticMethod(reference.pointer, methodID, ct, jvs)); - } + bool get isNull => reference.isNull; - /// Call static method identified by [name] and [signature]. - /// - /// This implementation looks up the method and calls [callStaticMethod]. - T callStaticMethodByName(String name, String signature, List args, - [int? callType]) { - final id = getStaticMethodID(name, signature); - return callStaticMethod(id, args, callType); + void release() { + reference.release(); } /// Casts this object to another [type]. @@ -317,40 +78,36 @@ class JObject { bool releaseOriginal = false, }) { if (releaseOriginal) { - _jClass?.release(); - final ret = type.fromRef(reference.pointer); + final ret = type.fromReference(JGlobalReference(reference.pointer)); reference.setAsReleased(); return ret; } - final newRef = Jni.env.NewGlobalRef(reference.pointer); - return type.fromRef(newRef); + final newRef = JGlobalReference(Jni.env.NewGlobalRef(reference.pointer)); + return type.fromReference(newRef); } - static final _objectClass = Jni.findJClass('java/lang/Object'); + static final _class = JClass.forName('java/lang/Object'); + + static final _hashCodeId = _class.instanceMethodId(r"hashCode", r"()I"); - static final _hashCodeId = Jni.accessors - .getMethodIDOf(_objectClass.reference.pointer, r"hashCode", r"()I"); @override - int get hashCode => Jni.accessors.callMethodWithArgs( - reference.pointer, _hashCodeId, JniCallType.intType, []).integer; + int get hashCode => _hashCodeId(this, const jintType(), []); - static final _equalsId = Jni.accessors.getMethodIDOf( - _objectClass.reference.pointer, r"equals", r"(Ljava/lang/Object;)Z"); + static final _equalsId = + _class.instanceMethodId(r"equals", r"(Ljava/lang/Object;)Z"); @override bool operator ==(Object other) { if (other is! JObject) { return false; } - return Jni.accessors.callMethodWithArgs(reference.pointer, _equalsId, - JniCallType.booleanType, [other.reference.pointer]).boolean; + return _equalsId(this, const jbooleanType(), [other.reference.pointer]); } - static final _toStringId = Jni.accessors.getMethodIDOf( - _objectClass.reference.pointer, r"toString", r"()Ljava/lang/String;"); + static final _toStringId = + _class.instanceMethodId(r"toString", r"()Ljava/lang/String;"); @override String toString() { - return JString.fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _toStringId, JniCallType.objectType, []).object) + return _toStringId(this, const JStringType(), []) .toDartString(releaseOriginal: true); } @@ -360,100 +117,6 @@ class JObject { void releasedBy(Arena arena) => arena.onReleaseAll(release); } -/// A high level wrapper over a JNI class reference. -class JClass { - final JReference reference; - - /// Construct a new [JClass] with [ref] as its underlying reference. - JClass.fromRef(JObjectPtr ref) : reference = JGlobalReference(ref); - - /// Get [JFieldIDPtr] of static field [fieldName] with [signature]. - JFieldIDPtr getStaticFieldID(String fieldName, String signature) { - return _getID( - Jni.accessors.getStaticFieldID, reference, fieldName, signature); - } - - /// Get [JMethodIDPtr] of static method [methodName] with [signature]. - JMethodIDPtr getStaticMethodID(String methodName, String signature) { - return _getID( - Jni.accessors.getStaticMethodID, reference, methodName, signature); - } - - /// Get [JFieldIDPtr] of field [fieldName] with [signature]. - JFieldIDPtr getFieldID(String fieldName, String signature) { - return _getID( - Jni.accessors.getFieldID, reference, fieldName, signature); - } - - /// Get [JMethodIDPtr] of method [methodName] with [signature]. - JMethodIDPtr getMethodID(String methodName, String signature) { - return _getID( - Jni.accessors.getMethodID, reference, methodName, signature); - } - - /// Get [JMethodIDPtr] of constructor with [signature]. - JMethodIDPtr getCtorID(String signature) => getMethodID("", signature); - - /// Get the value of static field using [fieldID]. - /// - /// See [JObject.getField] for more explanation about [callType]. - T getStaticField(JFieldIDPtr fieldID, [int? callType]) { - if (callType == JniCallType.voidType) { - throw ArgumentError("void is not a valid field type."); - } - return _getField(callType, - (ct) => Jni.accessors.getStaticField(reference.pointer, fieldID, ct)); - } - - /// Get the value of static field identified by [name] and [signature]. - /// - /// This implementation looks up the field ID and calls [getStaticField]. - T getStaticFieldByName(String name, String signature, [int? callType]) { - final id = getStaticFieldID(name, signature); - return getStaticField(id, callType); - } - - /// Call the static method using [methodID]. - /// - /// See [JObject.callMethod] and [JObject.getField] for more explanation - /// about [args] and [callType]. - T callStaticMethod(JMethodIDPtr methodID, List args, - [int? callType]) { - return _callMethod( - callType, - args, - (ct, jvs) => Jni.accessors - .callStaticMethod(reference.pointer, methodID, ct, jvs)); - } - - /// Call the static method identified by [name] and [signature]. - /// - /// This implementation looks up the method ID and calls [callStaticMethod]. - T callStaticMethodByName(String name, String signature, List args, - [int? callType]) { - final id = getStaticMethodID(name, signature); - return callStaticMethod(id, args, callType); - } - - /// Create a new instance of this class with [ctor] and [args]. - JObject newInstance(JMethodIDPtr ctor, List args) => using((arena) { - final jArgs = JValueArgs(args, arena); - final res = Jni.accessors - .newObject(reference.pointer, ctor, jArgs.values) - .object; - return JObject.fromRef(res); - }); - - bool get isReleased => reference.isReleased; - - void release() { - reference.release(); - } - - /// Registers this object to be released at the end of [arena]'s lifetime. - void releasedBy(Arena arena) => arena.onReleaseAll(release); -} - extension JObjectUseExtension on T { /// Applies [callback] on [this] object and then delete the underlying JNI /// reference, returning the result of [callback]. @@ -466,16 +129,3 @@ extension JObjectUseExtension on T { } } } - -extension JClassUseExtension on T { - /// Applies [callback] on [this] object and then delete the underlying JNI - /// reference, returning the result of [callback]. - R use(R Function(T) callback) { - try { - final result = callback(this); - return result; - } finally { - release(); - } - } -} diff --git a/pkgs/jni/lib/src/jprimitives.dart b/pkgs/jni/lib/src/jprimitives.dart index 04448da2ce..772f66d60f 100644 --- a/pkgs/jni/lib/src/jprimitives.dart +++ b/pkgs/jni/lib/src/jprimitives.dart @@ -14,86 +14,373 @@ abstract final class jbyte extends JPrimitive { static const type = jbyteType(); } -final class jbyteType extends JType { +final class jbyteType extends JType + with JCallable, JAccessible { const jbyteType(); @override final signature = 'B'; + + @override + int _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticByteMethodA(clazz, methodID, args); + } + + @override + int _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallByteMethodA(obj, methodID, args); + } + + @override + int _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetByteField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, int val) { + Jni.env.SetByteField(obj, fieldID, val); + } + + @override + int _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticByteField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, int val) { + return Jni.env.SetStaticByteField(clazz, fieldID, val); + } } abstract final class jboolean extends JPrimitive { static const type = jbooleanType(); } -final class jbooleanType extends JType { +final class jbooleanType extends JType + with JCallable, JAccessible { const jbooleanType(); @override final signature = 'Z'; + + @override + bool _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticBooleanMethodA(clazz, methodID, args); + } + + @override + bool _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallBooleanMethodA(obj, methodID, args); + } + + @override + bool _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetBooleanField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, bool val) { + Jni.env.SetBooleanField(obj, fieldID, val ? 1 : 0); + } + + @override + bool _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticBooleanField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, bool val) { + return Jni.env.SetStaticBooleanField(clazz, fieldID, val ? 1 : 0); + } } abstract final class jchar extends JPrimitive { static const type = jcharType(); } -final class jcharType extends JType { +final class jcharType extends JType + with JCallable, JAccessible { const jcharType(); @override final signature = 'C'; + + @override + int _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticCharMethodA(clazz, methodID, args); + } + + @override + int _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallCharMethodA(obj, methodID, args); + } + + @override + int _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetCharField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, int val) { + Jni.env.SetCharField(obj, fieldID, val); + } + + @override + int _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticCharField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, int val) { + return Jni.env.SetStaticCharField(clazz, fieldID, val); + } } abstract final class jshort extends JPrimitive { static const type = jshortType(); } -final class jshortType extends JType { +final class jshortType extends JType + with JCallable, JAccessible { const jshortType(); @override final signature = 'S'; + + @override + int _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticShortMethodA(clazz, methodID, args); + } + + @override + int _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallShortMethodA(obj, methodID, args); + } + + @override + int _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetShortField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, int val) { + Jni.env.SetShortField(obj, fieldID, val); + } + + @override + int _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticShortField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, int val) { + return Jni.env.SetStaticShortField(clazz, fieldID, val); + } } abstract final class jint extends JPrimitive { static const type = jintType(); } -final class jintType extends JType { +final class jintType extends JType + with JCallable, JAccessible { const jintType(); @override final signature = 'I'; + + @override + int _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticIntMethodA(clazz, methodID, args); + } + + @override + int _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallIntMethodA(obj, methodID, args); + } + + @override + int _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetIntField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, int val) { + Jni.env.SetIntField(obj, fieldID, val); + } + + @override + int _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticIntField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, int val) { + return Jni.env.SetStaticIntField(clazz, fieldID, val); + } } abstract final class jlong extends JPrimitive { static const type = jlongType(); } -final class jlongType extends JType { +final class jlongType extends JType + with JCallable, JAccessible { const jlongType(); @override final signature = 'J'; + + @override + int _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticLongMethodA(clazz, methodID, args); + } + + @override + int _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallLongMethodA(obj, methodID, args); + } + + @override + int _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetLongField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, int val) { + Jni.env.SetLongField(obj, fieldID, val); + } + + @override + int _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticLongField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, int val) { + return Jni.env.SetStaticLongField(clazz, fieldID, val); + } } abstract final class jfloat extends JPrimitive { static const type = jfloatType(); } -final class jfloatType extends JType { +final class jfloatType extends JType + with JCallable, JAccessible { const jfloatType(); @override final signature = 'F'; + + @override + double _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticFloatMethodA(clazz, methodID, args); + } + + @override + double _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallFloatMethodA(obj, methodID, args); + } + + @override + double _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetFloatField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, double val) { + Jni.env.SetFloatField(obj, fieldID, val); + } + + @override + double _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticFloatField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, double val) { + return Jni.env.SetStaticFloatField(clazz, fieldID, val); + } } abstract final class jdouble extends JPrimitive { static const type = jdoubleType(); } -final class jdoubleType extends JType { +final class jdoubleType extends JType + with JCallable, JAccessible { const jdoubleType(); @override final signature = 'D'; + + @override + double _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticDoubleMethodA(clazz, methodID, args); + } + + @override + double _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallDoubleMethodA(obj, methodID, args); + } + + @override + double _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return Jni.env.GetDoubleField(obj, fieldID); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, double val) { + Jni.env.SetDoubleField(obj, fieldID, val); + } + + @override + double _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return Jni.env.GetStaticDoubleField(clazz, fieldID); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, double val) { + return Jni.env.SetStaticDoubleField(clazz, fieldID, val); + } +} + +abstract final class jvoid extends JPrimitive { + static const type = jdoubleType(); +} + +final class jvoidType extends JType with JCallable { + const jvoidType(); + + @override + final signature = 'V'; + + @override + void _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallStaticVoidMethodA(clazz, methodID, args); + } + + @override + void _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return Jni.env.CallVoidMethodA(obj, methodID, args); + } } diff --git a/pkgs/jni/lib/src/jreference.dart b/pkgs/jni/lib/src/jreference.dart index 38dad2d58a..cad4193f7c 100644 --- a/pkgs/jni/lib/src/jreference.dart +++ b/pkgs/jni/lib/src/jreference.dart @@ -33,7 +33,7 @@ extension ProtectedJReference on JReference { } } -sealed class JReference { +abstract final class JReference { final JObjectPtr _pointer; bool _released = false; @@ -72,7 +72,7 @@ sealed class JReference { /// A managed JNI global reference. /// /// Uses a [NativeFinalizer] to delete the JNI global reference when finalized. -class JGlobalReference extends JReference implements Finalizable { +final class JGlobalReference extends JReference implements Finalizable { static final _finalizer = NativeFinalizer(Jni.env.ptr.ref.DeleteGlobalRef.cast()); @@ -88,3 +88,22 @@ class JGlobalReference extends JReference implements Finalizable { Jni.env.DeleteGlobalRef(_pointer); } } + +final jNullReference = _JNullReference(); + +final class _JNullReference extends JReference { + _JNullReference() : super(nullptr); + + @override + void _deleteReference() { + // No need to delete `null`. + } + + @override + void release() { + // No need to release `null`. + } + + @override + bool get isNull => true; +} diff --git a/pkgs/jni/lib/src/jvalues.dart b/pkgs/jni/lib/src/jvalues.dart index f21382c781..e213d9b702 100644 --- a/pkgs/jni/lib/src/jvalues.dart +++ b/pkgs/jni/lib/src/jvalues.dart @@ -3,46 +3,43 @@ // BSD-style license that can be found in the LICENSE file. import 'dart:ffi'; -import 'package:ffi/ffi.dart'; +import 'package:jni/internal_helpers_for_jnigen.dart'; import 'jobject.dart'; import 'third_party/generated_bindings.dart'; -import 'jni.dart'; void _fillJValue(Pointer pos, dynamic arg) { - if (arg is JObject) { - pos.ref.l = arg.reference.pointer; - return; - } - - switch (arg.runtimeType) { - case int: + switch (arg) { + case JObject(): + pos.ref.l = arg.reference.pointer; + case JReference(): + pos.ref.l = arg.pointer; + case Pointer() || Pointer(): // for nullptr + pos.ref.l = arg; + break; + case int(): pos.ref.j = arg; break; - case bool: + case bool(): pos.ref.z = arg ? 1 : 0; break; - case const (Pointer): - case const (Pointer): // for nullptr - pos.ref.l = arg; - break; - case double: + case double(): pos.ref.d = arg; break; - case JValueFloat: - pos.ref.f = (arg as JValueFloat).value; + case JValueFloat(): + pos.ref.f = arg.value; break; - case JValueInt: - pos.ref.i = (arg as JValueInt).value; + case JValueInt(): + pos.ref.i = arg.value; break; - case JValueShort: - pos.ref.s = (arg as JValueShort).value; + case JValueShort(): + pos.ref.s = arg.value; break; - case JValueChar: - pos.ref.c = (arg as JValueChar).value; + case JValueChar(): + pos.ref.c = arg.value; break; - case JValueByte: - pos.ref.b = (arg as JValueByte).value; + case JValueByte(): + pos.ref.b = arg.value; break; default: throw UnsupportedError("cannot convert ${arg.runtimeType} to jvalue"); @@ -53,9 +50,9 @@ void _fillJValue(Pointer pos, dynamic arg) { /// for use in methods that take arguments. /// /// int, bool, double and JObject types are converted out of the box. -/// wrap values in types such as [JValueLong] +/// wrap values in types such as [JValueInt] /// to convert to other primitive types instead. -Pointer toJValues(List args, {Allocator allocator = calloc}) { +Pointer toJValues(List args, {required Allocator allocator}) { final result = allocator(args.length); for (int i = 0; i < args.length; i++) { final arg = args[i]; @@ -105,40 +102,3 @@ final class JValueChar { value = s.codeUnitAt(0).toInt(); } } - -/// class used to convert dart types passed to convenience methods -/// into their corresponding Java values. -/// -/// Similar to Jni.jvalues, but instead of a pointer, an instance -/// with a dispose method is returned. -/// This allows us to take dart strings. -/// -/// Returned value is allocated using provided allocator. -/// But default allocator may be used for string conversions. -final class JValueArgs { - late Pointer values; - final List createdRefs = []; - - JValueArgs(List args, Arena arena) { - values = arena(args.length); - for (int i = 0; i < args.length; i++) { - final arg = args[i]; - final ptr = values + i; - if (arg is String) { - final jstr = Jni.env.toJStringPtr(arg); - ptr.ref.l = jstr; - createdRefs.add(jstr); - } else { - _fillJValue(ptr, arg); - } - arena.onReleaseAll(_dispose); - } - } - - /// Deletes temporary references such as [JStringPtr]s. - void _dispose() { - for (var ref in createdRefs) { - Jni.env.DeleteGlobalRef(ref); - } - } -} diff --git a/pkgs/jni/lib/src/lang/jboolean.dart b/pkgs/jni/lib/src/lang/jboolean.dart index 80723292a3..fdb7ff3362 100644 --- a/pkgs/jni/lib/src/lang/jboolean.dart +++ b/pkgs/jni/lib/src/lang/jboolean.dart @@ -2,11 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; import '../jobject.dart'; import '../jreference.dart'; -import '../jni.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; final class JBooleanType extends JObjType { @@ -16,7 +13,8 @@ final class JBooleanType extends JObjType { String get signature => r"Ljava/lang/Boolean;"; @override - JBoolean fromRef(JObjectPtr ref) => JBoolean.fromRef(ref); + JBoolean fromReference(JReference reference) => + JBoolean.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -38,28 +36,25 @@ class JBoolean extends JObject { // ignore: overridden_fields late final JObjType $type = type; - JBoolean.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JBoolean.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JBooleanType(); - static final _class = Jni.findJClass(r"java/lang/Boolean"); + static final _class = JClass.forName(r"java/lang/Boolean"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(Z)V"); + static final _ctorId = _class.constructorId(r"(Z)V"); JBoolean(bool boolean) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [boolean ? 1 : 0]).object); + : super.fromReference(_ctorId(_class, referenceType, [boolean ? 1 : 0])); - static final _booleanValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"booleanValue", r"()Z"); + static final _booleanValueId = + _class.instanceMethodId(r"booleanValue", r"()Z"); bool booleanValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs(reference.pointer, - _booleanValueId, JniCallType.booleanType, []).boolean; + final ret = _booleanValueId(this, const jbooleanType(), []); if (releaseOriginal) { release(); } diff --git a/pkgs/jni/lib/src/lang/jbyte.dart b/pkgs/jni/lib/src/lang/jbyte.dart index b560c921c4..4cb6360b8f 100644 --- a/pkgs/jni/lib/src/lang/jbyte.dart +++ b/pkgs/jni/lib/src/lang/jbyte.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -16,7 +14,7 @@ final class JByteType extends JObjType { String get signature => r"Ljava/lang/Byte;"; @override - JByte fromRef(JObjectPtr ref) => JByte.fromRef(ref); + JByte fromReference(JReference reference) => JByte.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -38,18 +36,16 @@ class JByte extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JByte.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JByte.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JByteType(); - static final _class = Jni.findJClass(r"java/lang/Byte"); + static final _class = JClass.forName(r"java/lang/Byte"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(B)V"); + static final _ctorId = _class.constructorId(r"(B)V"); JByte(int num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [JValueByte(num)]).object); + : super.fromReference(_ctorId(_class, referenceType, [JValueByte(num)])); } diff --git a/pkgs/jni/lib/src/lang/jcharacter.dart b/pkgs/jni/lib/src/lang/jcharacter.dart index 9ba7fac8b1..95662b52e7 100644 --- a/pkgs/jni/lib/src/lang/jcharacter.dart +++ b/pkgs/jni/lib/src/lang/jcharacter.dart @@ -1,9 +1,6 @@ -import '../accessors.dart'; -import '../jni.dart'; import '../jobject.dart'; import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; final class JCharacterType extends JObjType { @@ -13,7 +10,8 @@ final class JCharacterType extends JObjType { String get signature => r"Ljava/lang/Character;"; @override - JCharacter fromRef(JObjectPtr ref) => JCharacter.fromRef(ref); + JCharacter fromReference(JReference reference) => + JCharacter.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -35,29 +33,25 @@ class JCharacter extends JObject { // ignore: overridden_fields late final JObjType $type = type; - JCharacter.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JCharacter.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JCharacterType(); - static final _class = Jni.findJClass(r"java/lang/Character"); + static final _class = JClass.forName(r"java/lang/Character"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(C)V"); + static final _ctorId = _class.constructorId(r"(C)V"); JCharacter(int c) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [JValueChar(c)]).object); + : super.fromReference(_ctorId(_class, referenceType, [JValueChar(c)])); - static final _charValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"charValue", r"()C"); + static final _charValueId = _class.instanceMethodId(r"charValue", r"()C"); int charValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _charValueId, JniCallType.charType, []).char; + final ret = _charValueId(this, const jcharType(), []); if (releaseOriginal) { release(); } diff --git a/pkgs/jni/lib/src/lang/jdouble.dart b/pkgs/jni/lib/src/lang/jdouble.dart index ef74762aac..d7b6dbcd94 100644 --- a/pkgs/jni/lib/src/lang/jdouble.dart +++ b/pkgs/jni/lib/src/lang/jdouble.dart @@ -2,9 +2,7 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; -import '../third_party/generated_bindings.dart'; +import '../jreference.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -15,7 +13,8 @@ final class JDoubleType extends JObjType { String get signature => r"Ljava/lang/Double;"; @override - JDouble fromRef(JObjectPtr ref) => JDouble.fromRef(ref); + JDouble fromReference(JReference reference) => + JDouble.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -37,18 +36,16 @@ class JDouble extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JDouble.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JDouble.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JDoubleType(); - static final _class = Jni.findJClass(r"java/lang/Double"); + static final _class = JClass.forName(r"java/lang/Double"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(D)V"); + static final _ctorId = _class.constructorId(r"(D)V"); JDouble(double num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [num]).object); + : super.fromReference(_ctorId(_class, referenceType, [num])); } diff --git a/pkgs/jni/lib/src/lang/jfloat.dart b/pkgs/jni/lib/src/lang/jfloat.dart index a4389fbb67..1875aca93e 100644 --- a/pkgs/jni/lib/src/lang/jfloat.dart +++ b/pkgs/jni/lib/src/lang/jfloat.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -16,7 +14,7 @@ final class JFloatType extends JObjType { String get signature => r"Ljava/lang/Float;"; @override - JFloat fromRef(JObjectPtr ref) => JFloat.fromRef(ref); + JFloat fromReference(JReference reference) => JFloat.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -38,19 +36,17 @@ class JFloat extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JFloat.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JFloat.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JFloatType(); - static final _class = Jni.findJClass(r"java/lang/Float"); + static final _class = JClass.forName(r"java/lang/Float"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(F)V"); + static final _ctorId = _class.constructorId(r"(F)V"); JFloat(double num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [JValueFloat(num)]).object); + : super.fromReference(_ctorId(_class, referenceType, [JValueFloat(num)])); } diff --git a/pkgs/jni/lib/src/lang/jinteger.dart b/pkgs/jni/lib/src/lang/jinteger.dart index 834ed25b45..215be46107 100644 --- a/pkgs/jni/lib/src/lang/jinteger.dart +++ b/pkgs/jni/lib/src/lang/jinteger.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -16,7 +14,8 @@ final class JIntegerType extends JObjType { String get signature => r"Ljava/lang/Integer;"; @override - JInteger fromRef(JObjectPtr ref) => JInteger.fromRef(ref); + JInteger fromReference(JReference reference) => + JInteger.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -38,19 +37,17 @@ class JInteger extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JInteger.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JInteger.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JIntegerType(); - static final _class = Jni.findJClass(r"java/lang/Integer"); + static final _class = JClass.forName(r"java/lang/Integer"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(I)V"); + static final _ctorId = _class.constructorId("(I)V"); JInteger(int num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [JValueInt(num)]).object); + : super.fromReference(_ctorId(_class, referenceType, [JValueInt(num)])); } diff --git a/pkgs/jni/lib/src/lang/jlong.dart b/pkgs/jni/lib/src/lang/jlong.dart index 40146752db..ec189923d7 100644 --- a/pkgs/jni/lib/src/lang/jlong.dart +++ b/pkgs/jni/lib/src/lang/jlong.dart @@ -2,9 +2,7 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; -import '../third_party/generated_bindings.dart'; +import '../jreference.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -15,7 +13,7 @@ final class JLongType extends JObjType { String get signature => r"Ljava/lang/Long;"; @override - JLong fromRef(JObjectPtr ref) => JLong.fromRef(ref); + JLong fromReference(JReference reference) => JLong.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -37,19 +35,16 @@ class JLong extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JLong.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JLong.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JLongType(); - static final _class = Jni.findJClass(r"java/lang/Long"); + static final _class = JClass.forName(r"java/lang/Long"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(J)V"); + static final _ctorId = _class.constructorId(r"(J)V"); - JLong(int num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [num]).object); + JLong(int num) : super.fromReference(_ctorId(_class, referenceType, [num])); } diff --git a/pkgs/jni/lib/src/lang/jnumber.dart b/pkgs/jni/lib/src/lang/jnumber.dart index 98fa98bf80..38968f1da8 100644 --- a/pkgs/jni/lib/src/lang/jnumber.dart +++ b/pkgs/jni/lib/src/lang/jnumber.dart @@ -2,11 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; import '../jobject.dart'; import '../jreference.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jboolean.dart'; import 'jbyte.dart'; @@ -24,7 +21,8 @@ final class JNumberType extends JObjType { String get signature => r"Ljava/lang/Number;"; @override - JNumber fromRef(JObjectPtr ref) => JNumber.fromRef(ref); + JNumber fromReference(JReference reference) => + JNumber.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -46,93 +44,78 @@ class JNumber extends JObject { // ignore: overridden_fields late final JObjType $type = type; - JNumber.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JNumber.fromReference( + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/lang/Number"); + static final _class = JClass.forName(r"java/lang/Number"); /// The type which includes information such as the signature of this class. static const type = JNumberType(); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _ctorId = _class.constructorId(r"()V"); - JNumber() - : super.fromRef(Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _ctorId, []).object); + JNumber() : super.fromReference(_ctorId(_class, referenceType, [])); - static final _intValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"intValue", r"()I"); + static final _intValueId = _class.instanceMethodId(r"intValue", r"()I"); int intValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _intValueId, JniCallType.intType, []).integer; + final ret = _intValueId(this, const jintType(), []); if (releaseOriginal) { release(); } return ret; } - static final _longValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"longValue", r"()J"); + static final _longValueId = _class.instanceMethodId(r"longValue", r"()J"); int longValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _longValueId, JniCallType.longType, []).long; + final ret = _longValueId(this, const jlongType(), []); if (releaseOriginal) { release(); } return ret; } - static final _floatValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"floatValue", r"()F"); + static final _floatValueId = _class.instanceMethodId(r"floatValue", r"()F"); double floatValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _floatValueId, JniCallType.floatType, []).float; + final ret = _floatValueId(this, const jfloatType(), []); if (releaseOriginal) { release(); } return ret; } - static final _doubleValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"doubleValue", r"()D"); + static final _doubleValueId = _class.instanceMethodId(r"doubleValue", r"()D"); double doubleValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs(reference.pointer, - _doubleValueId, JniCallType.doubleType, []).doubleFloat; + final ret = _doubleValueId(this, const jdoubleType(), []); if (releaseOriginal) { release(); } return ret; } - static final _byteValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"byteValue", r"()B"); + static final _byteValueId = _class.instanceMethodId(r"byteValue", r"()B"); int byteValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _byteValueId, JniCallType.byteType, []).byte; + final ret = _byteValueId(this, const jbyteType(), []); if (releaseOriginal) { release(); } return ret; } - static final _shortValueId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"shortValue", r"()S"); + static final _shortValueId = _class.instanceMethodId(r"shortValue", r"()S"); int shortValue({bool releaseOriginal = false}) { reference.ensureNotNull(); - final ret = Jni.accessors.callMethodWithArgs( - reference.pointer, _shortValueId, JniCallType.shortType, []).short; + final ret = _shortValueId(this, const jshortType(), []); if (releaseOriginal) { release(); } diff --git a/pkgs/jni/lib/src/lang/jshort.dart b/pkgs/jni/lib/src/lang/jshort.dart index dbaf0a4beb..ca69b37af8 100644 --- a/pkgs/jni/lib/src/lang/jshort.dart +++ b/pkgs/jni/lib/src/lang/jshort.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jnumber.dart'; @@ -16,7 +14,7 @@ final class JShortType extends JObjType { String get signature => r"Ljava/lang/Short;"; @override - JShort fromRef(JObjectPtr ref) => JShort.fromRef(ref); + JShort fromReference(JReference reference) => JShort.fromReference(reference); @override JObjType get superType => const JNumberType(); @@ -38,19 +36,17 @@ class JShort extends JNumber { // ignore: overridden_fields late final JObjType $type = type; - JShort.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JShort.fromReference( + JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = JShortType(); - static final _class = Jni.findJClass(r"java/lang/Short"); + static final _class = JClass.forName(r"java/lang/Short"); - static final _ctorId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"", r"(S)V"); + static final _ctorId = _class.constructorId(r"(S)V"); JShort(int num) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _ctorId, [JValueShort(num)]).object); + : super.fromReference(_ctorId(_class, referenceType, [JValueShort(num)])); } diff --git a/pkgs/jni/lib/src/lang/jstring.dart b/pkgs/jni/lib/src/lang/jstring.dart index aa7a1650bb..cbb9930e9c 100644 --- a/pkgs/jni/lib/src/lang/jstring.dart +++ b/pkgs/jni/lib/src/lang/jstring.dart @@ -2,13 +2,10 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import 'dart:ffi'; - import 'package:jni/src/jreference.dart'; import '../jni.dart'; import '../jobject.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; final class JStringType extends JObjType { @@ -18,7 +15,8 @@ final class JStringType extends JObjType { String get signature => "Ljava/lang/String;"; @override - JString fromRef(Pointer ref) => JString.fromRef(ref); + JString fromReference(JReference reference) => + JString.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -44,13 +42,14 @@ class JString extends JObject { static const JObjType type = JStringType(); /// Construct a new [JString] with [reference] as its underlying reference. - JString.fromRef(JStringPtr reference) : super.fromRef(reference); + JString.fromReference(JReference reference) : super.fromReference(reference); /// The number of Unicode characters in this Java string. int get length => Jni.env.GetStringLength(reference.pointer); /// Construct a [JString] from the contents of Dart string [s]. - JString.fromString(String s) : super.fromRef(Jni.env.toJStringPtr(s)); + JString.fromString(String s) + : super.fromReference(JGlobalReference(Jni.env.toJStringPtr(s))); /// Returns the contents as a Dart String. /// diff --git a/pkgs/jni/lib/src/method_invocation.dart b/pkgs/jni/lib/src/method_invocation.dart index 69cdc4a039..d9c13c59f3 100644 --- a/pkgs/jni/lib/src/method_invocation.dart +++ b/pkgs/jni/lib/src/method_invocation.dart @@ -4,11 +4,11 @@ import 'dart:ffi'; -import 'third_party/generated_bindings.dart'; - -import 'lang/jstring.dart'; import 'jarray.dart'; import 'jobject.dart'; +import 'jreference.dart'; +import 'lang/jstring.dart'; +import 'third_party/generated_bindings.dart'; class $MethodInvocation { final Pointer result; @@ -24,10 +24,11 @@ class $MethodInvocation { ) { return $MethodInvocation._( Pointer.fromAddress(resultAddress), - JString.fromRef(Pointer.fromAddress(descriptorAddress)), - JArray.fromRef( + JString.fromReference( + JGlobalReference(Pointer.fromAddress(descriptorAddress))), + JArray.fromReference( const JObjectType(), - Pointer.fromAddress(argsAddress), + JGlobalReference(Pointer.fromAddress(argsAddress)), ), ); } diff --git a/pkgs/jni/lib/src/nio/jbuffer.dart b/pkgs/jni/lib/src/nio/jbuffer.dart index e66546518c..63152c576a 100644 --- a/pkgs/jni/lib/src/nio/jbuffer.dart +++ b/pkgs/jni/lib/src/nio/jbuffer.dart @@ -2,11 +2,9 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; import '../jobject.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; final class JBufferType extends JObjType { @@ -16,7 +14,8 @@ final class JBufferType extends JObjType { String get signature => r"Ljava/nio/Buffer;"; @override - JBuffer fromRef(JObjectPtr ref) => JBuffer.fromRef(ref); + JBuffer fromReference(JReference reference) => + JBuffer.fromReference(reference); @override JObjType get superType => const JObjectType(); @@ -49,169 +48,149 @@ class JBuffer extends JObject { // ignore: overridden_fields late final JObjType $type = type; - JBuffer.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JBuffer.fromReference( + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/nio/Buffer"); + static final _class = JClass.forName(r"java/nio/Buffer"); /// The type which includes information such as the signature of this class. static const type = JBufferType(); - static final _capacityId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"capacity", r"()I"); + static final _capacityId = _class.instanceMethodId(r"capacity", r"()I"); /// The number of elements this buffer contains. /// /// It is never negative and never changes. int get capacity { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _capacityId, JniCallType.intType, []).integer; + return _capacityId(this, const jintType(), []); } - static final _positionId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"position", r"()I"); + static final _positionId = _class.instanceMethodId(r"position", r"()I"); /// The index of the next element to be read or written. /// /// It is never negative and is never greater than its [limit]. int get position { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _positionId, JniCallType.intType, []).integer; + return _positionId(this, const jintType(), []); } - static final _setPositionId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"position", r"(I)Ljava/nio/Buffer;"); + static final _setPositionId = + _class.instanceMethodId(r"position", r"(I)Ljava/nio/Buffer;"); /// Throws: /// * [IllegalArgumentException] - If the preconditions on [newPosition] do /// not hold. set position(int position) { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _setPositionId, JniCallType.objectType, [JValueInt(position)]).object); + _setPositionId(this, const JObjectType(), [JValueInt(position)]).release(); } - static final _limitId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"limit", r"()I"); + static final _limitId = _class.instanceMethodId(r"limit", r"()I"); /// The index of the first element that should not be read or written. /// /// It is never negative and is never greater than its [capacity]. int get limit { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _limitId, JniCallType.intType, []).integer; + return _limitId(this, const jintType(), []); } - static final _setLimitId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"limit", r"(I)Ljava/nio/Buffer;"); + static final _setLimitId = + _class.instanceMethodId(r"limit", r"(I)Ljava/nio/Buffer;"); /// Throws: /// * [IllegalArgumentException] - If the preconditions on [newLimit] do not /// hold. set limit(int newLimit) { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _setLimitId, JniCallType.objectType, [JValueInt(newLimit)]).object); + _setLimitId(this, const JObjectType(), [JValueInt(newLimit)]).release(); } - static final _markId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"mark", r"()Ljava/nio/Buffer;"); + static final _markId = + _class.instanceMethodId(r"mark", r"()Ljava/nio/Buffer;"); /// Sets this buffer's mark at its [position]. /// /// Mark is the index to which its [position] will be reset when the [reset] /// method is invoked. void mark() { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _markId, JniCallType.objectType, []).object); + _markId(this, const JObjectType(), []).release(); } - static final _resetId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"reset", r"()Ljava/nio/Buffer;"); + static final _resetId = + _class.instanceMethodId(r"reset", r"()Ljava/nio/Buffer;"); /// Resets this buffer's [position] to the previously-marked position. /// /// Throws: /// * [InvalidMarkException] - If the mark has not been set void reset() { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _resetId, JniCallType.objectType, []).object); + _resetId(this, const JObjectType(), []).release(); } - static final _clearId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"clear", r"()Ljava/nio/Buffer;"); + static final _clearId = + _class.instanceMethodId(r"clear", r"()Ljava/nio/Buffer;"); /// Clears this buffer. /// /// The [position] is set to zero, the [limit] is set to /// the [capacity], and the mark is discarded. void clear() { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _clearId, JniCallType.objectType, []).object); + _clearId(this, const JObjectType(), []).release(); } - static final _flipId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"flip", r"()Ljava/nio/Buffer;"); + static final _flipId = + _class.instanceMethodId(r"flip", r"()Ljava/nio/Buffer;"); /// Flips this buffer. /// /// The limit is set to the current [position] and then the [position] is set /// to zero. If the mark is defined then it is discarded. void flip() { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _flipId, JniCallType.objectType, []).object); + _flipId(this, const JObjectType(), []).release(); } - static final _rewindId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"rewind", r"()Ljava/nio/Buffer;"); + static final _rewindId = + _class.instanceMethodId(r"rewind", r"()Ljava/nio/Buffer;"); /// Rewinds this buffer. /// /// The [position] is set to zero and the mark is discarded. void rewind() { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _rewindId, JniCallType.objectType, []).object); + _rewindId(this, const JObjectType(), []).release(); } - static final _remainingId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"remaining", r"()I"); + static final _remainingId = _class.instanceMethodId(r"remaining", r"()I"); /// The number of elements between the current [position] and the /// [limit]. int get remaining { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _remainingId, JniCallType.intType, []).integer; + return _remainingId(this, const jintType(), []); } - static final _hasRemainingId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"hasRemaining", r"()Z"); + static final _hasRemainingId = + _class.instanceMethodId(r"hasRemaining", r"()Z"); /// Whether there are any elements between the current [position] and /// the [limit]. bool get hasRemaining { - return Jni.accessors.callMethodWithArgs(reference.pointer, _hasRemainingId, - JniCallType.booleanType, []).boolean; + return _hasRemainingId(this, const jbooleanType(), []); } - static final _isReadOnlyId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isReadOnly", r"()Z"); + static final _isReadOnlyId = _class.instanceMethodId(r"isReadOnly", r"()Z"); /// Whether or not this buffer is read-only. bool get isReadOnly { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _isReadOnlyId, JniCallType.booleanType, []).boolean; + return _isReadOnlyId(this, const jbooleanType(), []); } - static final _hasArrayId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"hasArray", r"()Z"); + static final _hasArrayId = _class.instanceMethodId(r"hasArray", r"()Z"); /// Whether or not this buffer is backed by an accessible array. bool get hasArray { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _hasArrayId, JniCallType.booleanType, []).boolean; + return _hasArrayId(this, const jbooleanType(), []); } - static final _arrayId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"array", r"()Ljava/lang/Object;"); + static final _arrayId = + _class.instanceMethodId(r"array", r"()Ljava/lang/Object;"); /// The array that backs this buffer. /// @@ -224,12 +203,10 @@ class JBuffer extends JObject { /// * [UnsupportedOperationException] - If this buffer is not backed by an /// accessible array JObject get array { - return const JObjectType().fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _arrayId, JniCallType.objectType, []).object); + return _arrayId(this, const JObjectType(), []); } - static final _arrayOffsetId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"arrayOffset", r"()I"); + static final _arrayOffsetId = _class.instanceMethodId(r"arrayOffset", r"()I"); /// The offset within this buffer's backing array of the first element /// of the buffer. @@ -240,16 +217,13 @@ class JBuffer extends JObject { /// * [UnsupportedOperationException] - If this buffer is not backed by an /// accessible array int get arrayOffset { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _arrayOffsetId, JniCallType.intType, []).integer; + return _arrayOffsetId(this, const jintType(), []); } - static final _isDirectId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isDirect", r"()Z"); + static final _isDirectId = _class.instanceMethodId(r"isDirect", r"()Z"); /// Whether or not this buffer is direct. bool get isDirect { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _isDirectId, JniCallType.booleanType, []).boolean; + return _isDirectId(this, const jbooleanType(), []); } } diff --git a/pkgs/jni/lib/src/nio/jbyte_buffer.dart b/pkgs/jni/lib/src/nio/jbyte_buffer.dart index d1000395f6..c70bec5470 100644 --- a/pkgs/jni/lib/src/nio/jbyte_buffer.dart +++ b/pkgs/jni/lib/src/nio/jbyte_buffer.dart @@ -5,12 +5,11 @@ import 'dart:ffi'; import 'dart:typed_data'; -import '../accessors.dart'; import '../jarray.dart'; import '../jni.dart'; +import '../jobject.dart'; import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jbuffer.dart'; @@ -21,7 +20,8 @@ final class JByteBufferType extends JObjType { String get signature => r"Ljava/nio/ByteBuffer;"; @override - JByteBuffer fromRef(JObjectPtr ref) => JByteBuffer.fromRef(ref); + JByteBuffer fromReference(JReference reference) => + JByteBuffer.fromReference(reference); @override JObjType get superType => const JBufferType(); @@ -92,49 +92,42 @@ class JByteBuffer extends JBuffer { // ignore: overridden_fields late final JObjType $type = type; - JByteBuffer.fromRef( - JObjectPtr ref, - ) : super.fromRef(ref); + JByteBuffer.fromReference( + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/nio/ByteBuffer"); + static final _class = JClass.forName(r"java/nio/ByteBuffer"); /// The type which includes information such as the signature of this class. static const type = JByteBufferType(); - static final _allocateDirectId = Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"allocateDirect", r"(I)Ljava/nio/ByteBuffer;"); + static final _allocateDirectId = + _class.staticMethodId(r"allocateDirect", r"(I)Ljava/nio/ByteBuffer;"); /// Allocates a new direct byte buffer. /// /// Throws: /// * [IllegalArgumentException] - If the capacity is a negative integer factory JByteBuffer.allocateDirect(int capacity) { - return JByteBuffer.fromRef( - Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _allocateDirectId, - JniCallType.objectType, - [JValueInt(capacity)]).object, - ); + return _allocateDirectId( + _class, const JByteBufferType(), [JValueInt(capacity)]); } - static final _allocateId = Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"allocate", r"(I)Ljava/nio/ByteBuffer;"); + static final _allocateId = + _class.staticMethodId(r"allocate", r"(I)Ljava/nio/ByteBuffer;"); /// Allocates a new byte buffer. /// /// Throws: /// * [IllegalArgumentException] - If the capacity is a negative integer factory JByteBuffer.allocate(int capacity) { - return const JByteBufferType().fromRef(Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _allocateId, - JniCallType.objectType, [JValueInt(capacity)]).object); + return _allocateId(_class, const JByteBufferType(), [JValueInt(capacity)]); } - static final _wrapWholeId = Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"wrap", r"([B)Ljava/nio/ByteBuffer;"); - static final _wrapId = Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"wrap", r"([BII)Ljava/nio/ByteBuffer;"); + static final _wrapWholeId = + _class.staticMethodId(r"wrap", r"([B)Ljava/nio/ByteBuffer;"); + static final _wrapId = + _class.staticMethodId(r"wrap", r"([BII)Ljava/nio/ByteBuffer;"); /// Wraps a byte array into a buffer. /// @@ -147,24 +140,18 @@ class JByteBuffer extends JBuffer { int? length, ]) { if (offset == null && length == null) { - return const JByteBufferType().fromRef( - Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _wrapWholeId, - JniCallType.objectType, - [array.reference.pointer], - ).object, + return _wrapWholeId( + _class, + const JByteBufferType(), + [array.reference.pointer], ); } offset ??= 0; length ??= array.length - offset; - return const JByteBufferType().fromRef( - Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _wrapId, - JniCallType.objectType, - [array.reference.pointer, JValueInt(offset), JValueInt(length)], - ).object, + return _wrapId( + _class, + const JByteBufferType(), + [array.reference.pointer, JValueInt(offset), JValueInt(length)], ); } @@ -177,40 +164,32 @@ class JByteBuffer extends JBuffer { return buffer; } - static final _sliceId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"slice", r"()Ljava/nio/ByteBuffer;"); + static final _sliceId = + _class.instanceMethodId(r"slice", r"()Ljava/nio/ByteBuffer;"); /// Creates a new byte buffer whose content is a shared subsequence of this /// buffer's content. JByteBuffer slice() { - return const JByteBufferType().fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _sliceId, JniCallType.objectType, []).object); + return _sliceId(this, const JByteBufferType(), []); } - static final _duplicateId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"duplicate", r"()Ljava/nio/ByteBuffer;"); + static final _duplicateId = + _class.instanceMethodId(r"duplicate", r"()Ljava/nio/ByteBuffer;"); /// Creates a new byte buffer that shares this buffer's content. JByteBuffer duplicate() { - return const JByteBufferType().fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _duplicateId, JniCallType.objectType, []).object); + return _duplicateId(this, const JByteBufferType(), []); } - static final _asReadOnlyBufferId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"asReadOnlyBuffer", - r"()Ljava/nio/ByteBuffer;"); + static final _asReadOnlyBufferId = + _class.instanceMethodId(r"asReadOnlyBuffer", r"()Ljava/nio/ByteBuffer;"); /// Creates a new, read-only byte buffer that shares this buffer's content. JByteBuffer asReadOnlyBuffer() { - return const JByteBufferType().fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, - _asReadOnlyBufferId, - JniCallType.objectType, []).object); + return _asReadOnlyBufferId(this, const JByteBufferType(), []); } - static final _getId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"get", r"()B"); + static final _getId = _class.instanceMethodId(r"get", r"()B"); /// Reads the byte at this buffer's current [position], and then increments the /// [position]. @@ -219,12 +198,11 @@ class JByteBuffer extends JBuffer { /// * [BufferOverflowException] - If the buffer's current [position] is not /// smaller than its [limit] int get nextByte { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _getId, JniCallType.byteType, []).byte; + return _getId(this, const jbyteType(), []); } - static final _putId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"put", r"(B)Ljava/nio/ByteBuffer;"); + static final _putId = + _class.instanceMethodId(r"put", r"(B)Ljava/nio/ByteBuffer;"); /// Writes the given byte into this buffer at the current [position], and then /// increments the [position]. @@ -234,18 +212,14 @@ class JByteBuffer extends JBuffer { /// smaller than its [limit] /// * [ReadOnlyBufferException] - If this buffer is read-only set nextByte(int b) { - Jni.env.DeleteGlobalRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _putId, JniCallType.objectType, [JValueByte(b)]).object); + _putId(this, const JObjectType(), [JValueByte(b)]).release(); } - static final _arrayId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"array", r"()[B"); + static final _arrayId = _class.instanceMethodId(r"array", r"()[B"); @override JArray get array { - return const JArrayType(jbyteType()).fromRef(Jni.accessors - .callMethodWithArgs( - reference.pointer, _arrayId, JniCallType.objectType, []).object); + return _arrayId(this, const JArrayType(jbyteType()), []); } void _ensureIsDirect() { diff --git a/pkgs/jni/lib/src/third_party/global_env_extensions.dart b/pkgs/jni/lib/src/third_party/global_env_extensions.dart index 2fe400109b..3e90beda0c 100644 --- a/pkgs/jni/lib/src/third_party/global_env_extensions.dart +++ b/pkgs/jni/lib/src/third_party/global_env_extensions.dart @@ -75,7 +75,7 @@ class GlobalJniEnv { JObjectPtr ToReflectedMethod( JClassPtr cls, JMethodIDPtr methodId, int isStatic) => - _ToReflectedMethod(cls, methodId, isStatic).object; + _ToReflectedMethod(cls, methodId, isStatic).objectPointer; late final _GetSuperclass = ptr.ref.GetSuperclass .asFunction(); @@ -93,7 +93,7 @@ class GlobalJniEnv { JObjectPtr ToReflectedField( JClassPtr cls, JFieldIDPtr fieldID, int isStatic) => - _ToReflectedField(cls, fieldID, isStatic).object; + _ToReflectedField(cls, fieldID, isStatic).objectPointer; late final _Throw = ptr.ref.Throw.asFunction(); @@ -109,7 +109,7 @@ class GlobalJniEnv { late final _ExceptionOccurred = ptr.ref.ExceptionOccurred.asFunction(); - JThrowablePtr ExceptionOccurred() => _ExceptionOccurred().object; + JThrowablePtr ExceptionOccurred() => _ExceptionOccurred().objectPointer; late final _ExceptionDescribe = ptr.ref.ExceptionDescribe.asFunction(); @@ -134,12 +134,13 @@ class GlobalJniEnv { late final _PopLocalFrame = ptr.ref.PopLocalFrame.asFunction(); - JObjectPtr PopLocalFrame(JObjectPtr result) => _PopLocalFrame(result).object; + JObjectPtr PopLocalFrame(JObjectPtr result) => + _PopLocalFrame(result).objectPointer; late final _NewGlobalRef = ptr.ref.NewGlobalRef.asFunction(); - JObjectPtr NewGlobalRef(JObjectPtr obj) => _NewGlobalRef(obj).object; + JObjectPtr NewGlobalRef(JObjectPtr obj) => _NewGlobalRef(obj).objectPointer; late final _DeleteGlobalRef = ptr.ref.DeleteGlobalRef .asFunction(); @@ -161,7 +162,7 @@ class GlobalJniEnv { late final _NewLocalRef = ptr.ref.NewLocalRef.asFunction(); - JObjectPtr NewLocalRef(JObjectPtr obj) => _NewLocalRef(obj).object; + JObjectPtr NewLocalRef(JObjectPtr obj) => _NewLocalRef(obj).objectPointer; late final _EnsureLocalCapacity = ptr.ref.EnsureLocalCapacity .asFunction(); @@ -172,13 +173,13 @@ class GlobalJniEnv { late final _AllocObject = ptr.ref.AllocObject.asFunction(); - JObjectPtr AllocObject(JClassPtr clazz) => _AllocObject(clazz).object; + JObjectPtr AllocObject(JClassPtr clazz) => _AllocObject(clazz).objectPointer; late final _NewObject = ptr.ref.NewObject .asFunction(); JObjectPtr NewObject(JClassPtr clazz, JMethodIDPtr methodID) => - _NewObject(clazz, methodID).object; + _NewObject(clazz, methodID).objectPointer; late final _NewObjectA = ptr.ref.NewObjectA.asFunction< JniResult Function( @@ -186,7 +187,7 @@ class GlobalJniEnv { JObjectPtr NewObjectA( JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer args) => - _NewObjectA(clazz, methodID, args).object; + _NewObjectA(clazz, methodID, args).objectPointer; late final _GetObjectClass = ptr.ref.GetObjectClass .asFunction(); @@ -211,7 +212,7 @@ class GlobalJniEnv { .asFunction(); JObjectPtr CallObjectMethod(JObjectPtr obj, JMethodIDPtr methodID) => - _CallObjectMethod(obj, methodID).object; + _CallObjectMethod(obj, methodID).objectPointer; late final _CallObjectMethodA = ptr.ref.CallObjectMethodA.asFunction< JniResult Function( @@ -219,7 +220,7 @@ class GlobalJniEnv { JObjectPtr CallObjectMethodA( JObjectPtr obj, JMethodIDPtr methodID, ffi.Pointer args) => - _CallObjectMethodA(obj, methodID, args).object; + _CallObjectMethodA(obj, methodID, args).objectPointer; late final _CallBooleanMethod = ptr.ref.CallBooleanMethod .asFunction(); @@ -354,7 +355,7 @@ class GlobalJniEnv { JObjectPtr CallNonvirtualObjectMethod( JObjectPtr obj, JClassPtr clazz, JMethodIDPtr methodID) => - _CallNonvirtualObjectMethod(obj, clazz, methodID).object; + _CallNonvirtualObjectMethod(obj, clazz, methodID).objectPointer; late final _CallNonvirtualObjectMethodA = ptr.ref.CallNonvirtualObjectMethodA .asFunction< @@ -363,7 +364,7 @@ class GlobalJniEnv { JObjectPtr CallNonvirtualObjectMethodA(JObjectPtr obj, JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer args) => - _CallNonvirtualObjectMethodA(obj, clazz, methodID, args).object; + _CallNonvirtualObjectMethodA(obj, clazz, methodID, args).objectPointer; late final _CallNonvirtualBooleanMethod = ptr.ref.CallNonvirtualBooleanMethod .asFunction< @@ -539,7 +540,7 @@ class GlobalJniEnv { .asFunction(); JObjectPtr GetObjectField(JObjectPtr obj, JFieldIDPtr fieldID) => - _GetObjectField(obj, fieldID).object; + _GetObjectField(obj, fieldID).objectPointer; late final _GetBooleanField = ptr.ref.GetBooleanField .asFunction(); @@ -658,7 +659,7 @@ class GlobalJniEnv { .asFunction(); JObjectPtr CallStaticObjectMethod(JClassPtr clazz, JMethodIDPtr methodID) => - _CallStaticObjectMethod(clazz, methodID).object; + _CallStaticObjectMethod(clazz, methodID).objectPointer; late final _CallStaticObjectMethodA = ptr.ref.CallStaticObjectMethodA .asFunction< @@ -667,7 +668,7 @@ class GlobalJniEnv { JObjectPtr CallStaticObjectMethodA( JClassPtr clazz, JMethodIDPtr methodID, ffi.Pointer args) => - _CallStaticObjectMethodA(clazz, methodID, args).object; + _CallStaticObjectMethodA(clazz, methodID, args).objectPointer; late final _CallStaticBooleanMethod = ptr.ref.CallStaticBooleanMethod .asFunction(); @@ -811,7 +812,7 @@ class GlobalJniEnv { .asFunction(); JObjectPtr GetStaticObjectField(JClassPtr clazz, JFieldIDPtr fieldID) => - _GetStaticObjectField(clazz, fieldID).object; + _GetStaticObjectField(clazz, fieldID).objectPointer; late final _GetStaticBooleanField = ptr.ref.GetStaticBooleanField .asFunction(); @@ -923,7 +924,7 @@ class GlobalJniEnv { JniResult Function(ffi.Pointer unicodeChars, int len)>(); JStringPtr NewString(ffi.Pointer unicodeChars, int len) => - _NewString(unicodeChars, len).object; + _NewString(unicodeChars, len).objectPointer; late final _GetStringLength = ptr.ref.GetStringLength .asFunction(); @@ -949,7 +950,7 @@ class GlobalJniEnv { .asFunction bytes)>(); JStringPtr NewStringUTF(ffi.Pointer bytes) => - _NewStringUTF(bytes).object; + _NewStringUTF(bytes).objectPointer; late final _GetStringUTFLength = ptr.ref.GetStringUTFLength .asFunction(); @@ -982,13 +983,13 @@ class GlobalJniEnv { JObjectArrayPtr NewObjectArray( int length, JClassPtr elementClass, JObjectPtr initialElement) => - _NewObjectArray(length, elementClass, initialElement).object; + _NewObjectArray(length, elementClass, initialElement).objectPointer; late final _GetObjectArrayElement = ptr.ref.GetObjectArrayElement .asFunction(); JObjectPtr GetObjectArrayElement(JObjectArrayPtr array, int index) => - _GetObjectArrayElement(array, index).object; + _GetObjectArrayElement(array, index).objectPointer; late final _SetObjectArrayElement = ptr.ref.SetObjectArrayElement.asFunction< JThrowablePtr Function( @@ -1002,42 +1003,45 @@ class GlobalJniEnv { ptr.ref.NewBooleanArray.asFunction(); JBooleanArrayPtr NewBooleanArray(int length) => - _NewBooleanArray(length).object; + _NewBooleanArray(length).objectPointer; late final _NewByteArray = ptr.ref.NewByteArray.asFunction(); - JByteArrayPtr NewByteArray(int length) => _NewByteArray(length).object; + JByteArrayPtr NewByteArray(int length) => _NewByteArray(length).objectPointer; late final _NewCharArray = ptr.ref.NewCharArray.asFunction(); - JCharArrayPtr NewCharArray(int length) => _NewCharArray(length).object; + JCharArrayPtr NewCharArray(int length) => _NewCharArray(length).objectPointer; late final _NewShortArray = ptr.ref.NewShortArray.asFunction(); - JShortArrayPtr NewShortArray(int length) => _NewShortArray(length).object; + JShortArrayPtr NewShortArray(int length) => + _NewShortArray(length).objectPointer; late final _NewIntArray = ptr.ref.NewIntArray.asFunction(); - JIntArrayPtr NewIntArray(int length) => _NewIntArray(length).object; + JIntArrayPtr NewIntArray(int length) => _NewIntArray(length).objectPointer; late final _NewLongArray = ptr.ref.NewLongArray.asFunction(); - JLongArrayPtr NewLongArray(int length) => _NewLongArray(length).object; + JLongArrayPtr NewLongArray(int length) => _NewLongArray(length).objectPointer; late final _NewFloatArray = ptr.ref.NewFloatArray.asFunction(); - JFloatArrayPtr NewFloatArray(int length) => _NewFloatArray(length).object; + JFloatArrayPtr NewFloatArray(int length) => + _NewFloatArray(length).objectPointer; late final _NewDoubleArray = ptr.ref.NewDoubleArray.asFunction(); - JDoubleArrayPtr NewDoubleArray(int length) => _NewDoubleArray(length).object; + JDoubleArrayPtr NewDoubleArray(int length) => + _NewDoubleArray(length).objectPointer; late final _GetBooleanArrayElements = ptr.ref.GetBooleanArrayElements .asFunction< @@ -1385,7 +1389,8 @@ class GlobalJniEnv { late final _NewWeakGlobalRef = ptr.ref.NewWeakGlobalRef.asFunction(); - JWeakPtr NewWeakGlobalRef(JObjectPtr obj) => _NewWeakGlobalRef(obj).object; + JWeakPtr NewWeakGlobalRef(JObjectPtr obj) => + _NewWeakGlobalRef(obj).objectPointer; late final _DeleteWeakGlobalRef = ptr.ref.DeleteWeakGlobalRef .asFunction(); @@ -1401,7 +1406,7 @@ class GlobalJniEnv { JniResult Function(ffi.Pointer address, int capacity)>(); JObjectPtr NewDirectByteBuffer(ffi.Pointer address, int capacity) => - _NewDirectByteBuffer(address, capacity).object; + _NewDirectByteBuffer(address, capacity).objectPointer; late final _GetDirectBufferAddress = ptr.ref.GetDirectBufferAddress .asFunction(); diff --git a/pkgs/jni/lib/src/types.dart b/pkgs/jni/lib/src/types.dart index d560b2da64..04a86bb296 100644 --- a/pkgs/jni/lib/src/types.dart +++ b/pkgs/jni/lib/src/types.dart @@ -4,18 +4,68 @@ import 'dart:ffi'; +import 'package:ffi/ffi.dart'; +import 'package:jni/internal_helpers_for_jnigen.dart'; + import 'jni.dart'; import 'jobject.dart'; +import 'jvalues.dart'; +import 'third_party/generated_bindings.dart'; +part 'jclass.dart'; part 'jprimitives.dart'; -sealed class JType { +sealed class JType { const JType(); String get signature; } -abstract class JObjType extends JType { +/// Able to be a return type of a method that can be called. +mixin JCallable on JType { + DartT _staticCall( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args); + DartT _instanceCall( + JObjectPtr obj, JMethodIDPtr methodID, Pointer args); +} + +/// Able to be constructed. +mixin JConstructable on JType { + DartT _newObject( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args); +} + +/// Able to be the type of a field that can be get and set.s +mixin JAccessible on JType { + DartT _staticGet(JClassPtr clazz, JFieldIDPtr fieldID); + DartT _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID); + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, DartT val); + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, DartT val); +} + +/// Only used for jnigen. +/// +/// Makes constructing objects easier inside the generated bindings by allowing +/// a [JReference] to be created. This allows [JObject]s to use constructors +/// that call `super.fromReference` instead of factories. +const referenceType = _ReferenceType(); + +final class _ReferenceType extends JType + with JConstructable { + const _ReferenceType(); + + @override + JReference _newObject( + JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return JGlobalReference(Jni.env.NewObjectA(clazz, methodID, args)); + } + + @override + String get signature => 'Ljava/lang/Object;'; +} + +abstract class JObjType extends JType + with JCallable, JConstructable, JAccessible { /// Number of super types. Distance to the root type. int get superCount; @@ -24,13 +74,53 @@ abstract class JObjType extends JType { const JObjType(); /// Creates an object from this type using the reference. - T fromRef(Pointer ref); + T fromReference(JReference reference); - JClass getClass() { + JClass get jClass { if (signature.startsWith('L') && signature.endsWith(';')) { - return Jni.findJClass(signature.substring(1, signature.length - 1)); + return JClass.forName(signature.substring(1, signature.length - 1)); } - return Jni.findJClass(signature); + return JClass.forName(signature); + } + + @override + T _staticCall(JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return fromReference(JGlobalReference( + Jni.env.CallStaticObjectMethodA(clazz, methodID, args))); + } + + @override + T _instanceCall(JObjectPtr obj, JMethodIDPtr methodID, Pointer args) { + return fromReference( + JGlobalReference(Jni.env.CallObjectMethodA(obj, methodID, args))); + } + + @override + T _newObject(JClassPtr clazz, JMethodIDPtr methodID, Pointer args) { + return fromReference( + JGlobalReference(Jni.env.NewObjectA(clazz, methodID, args))); + } + + @override + T _instanceGet(JObjectPtr obj, JFieldIDPtr fieldID) { + return fromReference( + JGlobalReference(Jni.env.GetObjectField(obj, fieldID))); + } + + @override + void _instanceSet(JObjectPtr obj, JFieldIDPtr fieldID, T val) { + Jni.env.SetObjectField(obj, fieldID, val.reference.pointer); + } + + @override + T _staticGet(JClassPtr clazz, JFieldIDPtr fieldID) { + return fromReference( + JGlobalReference(Jni.env.GetStaticObjectField(clazz, fieldID))); + } + + @override + void _staticSet(JClassPtr clazz, JFieldIDPtr fieldID, T val) { + Jni.env.SetStaticObjectField(clazz, fieldID, val.reference.pointer); } } diff --git a/pkgs/jni/lib/src/util/jiterator.dart b/pkgs/jni/lib/src/util/jiterator.dart index c9861afec5..7edfb14d95 100644 --- a/pkgs/jni/lib/src/util/jiterator.dart +++ b/pkgs/jni/lib/src/util/jiterator.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import '../accessors.dart'; -import '../jni.dart'; import '../jobject.dart'; -import '../third_party/generated_bindings.dart'; +import '../jreference.dart'; import '../types.dart'; final class JIteratorType<$E extends JObject> extends JObjType> { @@ -19,7 +17,8 @@ final class JIteratorType<$E extends JObject> extends JObjType> { String get signature => r"Ljava/util/Iterator;"; @override - JIterator<$E> fromRef(JObjectPtr ref) => JIterator.fromRef(E, ref); + JIterator<$E> fromReference(JReference reference) => + JIterator.fromReference(E, reference); @override JObjType get superType => const JObjectType(); @@ -45,12 +44,12 @@ class JIterator<$E extends JObject> extends JObject implements Iterator<$E> { final JObjType<$E> E; - JIterator.fromRef( + JIterator.fromReference( this.E, - JObjectPtr ref, - ) : super.fromRef(ref); + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/util/Iterator"); + static final _class = JClass.forName(r"java/util/Iterator"); /// The type which includes information such as the signature of this class. static JIteratorType<$E> type<$E extends JObject>( @@ -66,18 +65,15 @@ class JIterator<$E extends JObject> extends JObject implements Iterator<$E> { @override $E get current => _current as $E; - static final _hasNextId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"hasNext", r"()Z"); + static final _hasNextId = _class.instanceMethodId(r"hasNext", r"()Z"); bool _hasNext() { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _hasNextId, JniCallType.booleanType, []).boolean; + return _hasNextId(this, const jbooleanType(), []); } - static final _nextId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"next", r"()Ljava/lang/Object;"); + static final _nextId = + _class.instanceMethodId(r"next", r"()Ljava/lang/Object;"); $E _next() { - return E.fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _nextId, JniCallType.objectType, []).object); + return _nextId(this, E, []); } @override diff --git a/pkgs/jni/lib/src/util/jlist.dart b/pkgs/jni/lib/src/util/jlist.dart index bb99c1c6c0..cb42cd2ced 100644 --- a/pkgs/jni/lib/src/util/jlist.dart +++ b/pkgs/jni/lib/src/util/jlist.dart @@ -3,15 +3,13 @@ // BSD-style license that can be found in the LICENSE file. import 'dart:collection'; -import 'dart:ffi'; import 'package:jni/src/util/jset.dart'; -import '../accessors.dart'; import '../jni.dart'; import '../jobject.dart'; +import '../jreference.dart'; import '../jvalues.dart'; -import '../third_party/generated_bindings.dart'; import '../types.dart'; import 'jiterator.dart'; @@ -26,7 +24,8 @@ final class JListType<$E extends JObject> extends JObjType> { String get signature => r"Ljava/util/List;"; @override - JList<$E> fromRef(JObjectPtr ref) => JList.fromRef(E, ref); + JList<$E> fromReference(JReference reference) => + JList.fromReference(E, reference); @override JObjType get superType => const JObjectType(); @@ -50,12 +49,12 @@ class JList<$E extends JObject> extends JObject with ListMixin<$E> { final JObjType<$E> E; - JList.fromRef( + JList.fromReference( this.E, - JObjectPtr ref, - ) : super.fromRef(ref); + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/util/List"); + static final _class = JClass.forName(r"java/util/List"); /// The type which includes information such as the signature of this class. static JListType<$E> type<$E extends JObject>( @@ -66,204 +65,170 @@ class JList<$E extends JObject> extends JObject with ListMixin<$E> { ); } - static final _arrayListClassRef = Jni.findJClass(r"java/util/ArrayList"); - static final _ctorId = Jni.accessors - .getMethodIDOf(_arrayListClassRef.reference.pointer, r"", r"()V"); + static final _arrayListClassRef = JClass.forName(r"java/util/ArrayList"); + static final _ctorId = _arrayListClassRef.constructorId(r"()V"); JList.array(this.E) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _arrayListClassRef.reference.pointer, _ctorId, []).object); + : super.fromReference(_ctorId(_arrayListClassRef, referenceType, [])); - static final _sizeId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"size", r"()I"); + static final _sizeId = _class.instanceMethodId(r"size", r"()I"); @override - int get length => Jni.accessors.callMethodWithArgs( - reference.pointer, _sizeId, JniCallType.intType, []).integer; + int get length => _sizeId(this, const jintType(), []); @override set length(int newLength) { RangeError.checkNotNegative(newLength); while (length < newLength) { - add(E.fromRef(nullptr)); + add(E.fromReference(jNullReference)); } while (newLength < length) { removeAt(length - 1); } } - static final _getId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"get", r"(I)Ljava/lang/Object;"); + static final _getId = + _class.instanceMethodId(r"get", r"(I)Ljava/lang/Object;"); @override $E operator [](int index) { RangeError.checkValidIndex(index, this); - return E.fromRef(Jni.accessors.callMethodWithArgs(reference.pointer, _getId, - JniCallType.objectType, [JValueInt(index)]).object); + return _getId(this, E, [JValueInt(index)]); } - static final _setId = Jni.accessors.getMethodIDOf(_class.reference.pointer, + static final _setId = _class.instanceMethodId( r"set", r"(ILjava/lang/Object;)Ljava/lang/Object;"); @override void operator []=(int index, $E value) { RangeError.checkValidIndex(index, this); - E.fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, - _setId, - JniCallType.objectType, - [JValueInt(index), value.reference.pointer]).object); + _setId(this, E, [JValueInt(index), value]); } - static final _addId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"add", r"(Ljava/lang/Object;)Z"); + static final _addId = + _class.instanceMethodId(r"add", r"(Ljava/lang/Object;)Z"); @override void add($E element) { - Jni.accessors.callMethodWithArgs(reference.pointer, _addId, - JniCallType.booleanType, [element.reference.pointer]).check(); + _addId(this, const jbooleanType(), [element]); } - static final _collectionClass = Jni.findJClass("java/util/Collection"); - static final _addAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"addAll", r"(Ljava/util/Collection;)Z"); + static final _collectionClass = JClass.forName("java/util/Collection"); + static final _addAllId = + _class.instanceMethodId(r"addAll", r"(Ljava/util/Collection;)Z"); @override void addAll(Iterable<$E> iterable) { if (iterable is JObject && Jni.env.IsInstanceOf((iterable as JObject).reference.pointer, _collectionClass.reference.pointer)) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _addAllId, - JniCallType.booleanType, - [(iterable as JObject).reference.pointer]).boolean; + _addAllId(this, const jbooleanType(), [(iterable as JObject)]); return; } return super.addAll(iterable); } - static final _clearId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"clear", r"()V"); + static final _clearId = _class.instanceMethodId(r"clear", r"()V"); @override void clear() { - Jni.accessors.callMethodWithArgs( - reference.pointer, _clearId, JniCallType.voidType, []).check(); + _clearId(this, const jvoidType(), []); } - static final _containsId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"contains", r"(Ljava/lang/Object;)Z"); + static final _containsId = + _class.instanceMethodId(r"contains", r"(Ljava/lang/Object;)Z"); @override bool contains(Object? element) { if (element is! JObject) return false; - return Jni.accessors.callMethodWithArgs(reference.pointer, _containsId, - JniCallType.booleanType, [element.reference.pointer]).boolean; + return _containsId(this, const jbooleanType(), [element.reference.pointer]); } - static final _getRangeId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"subList", r"(II)Ljava/util/List;"); + static final _getRangeId = + _class.instanceMethodId(r"subList", r"(II)Ljava/util/List;"); @override JList<$E> getRange(int start, int end) { RangeError.checkValidRange(start, end, this.length); - return JListType(E).fromRef( - Jni.accessors.callMethodWithArgs(reference.pointer, _getRangeId, - JniCallType.objectType, [JValueInt(start), JValueInt(end)]).object, - ); + return _getRangeId(this, JListType(E), [JValueInt(start), JValueInt(end)]); } - static final _indexOfId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"indexOf", r"(Ljava/lang/Object;)I"); + static final _indexOfId = + _class.instanceMethodId(r"indexOf", r"(Ljava/lang/Object;)I"); @override int indexOf(Object? element, [int start = 0]) { if (element is! JObject) return -1; if (start < 0) start = 0; if (start == 0) { - return Jni.accessors.callMethodWithArgs(reference.pointer, _indexOfId, - JniCallType.intType, [element.reference.pointer]).integer; + return _indexOfId(this, const jintType(), [element.reference.pointer]); } - return Jni.accessors.callMethodWithArgs( - getRange(start, length).reference.pointer, - _indexOfId, - JniCallType.intType, + return _indexOfId( + getRange(start, length), + const jintType(), [element.reference.pointer], - ).integer; + ); } - static final _insertId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"add", r"(ILjava/lang/Object;)V"); + static final _insertId = + _class.instanceMethodId(r"add", r"(ILjava/lang/Object;)V"); @override void insert(int index, $E element) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _insertId, - JniCallType.voidType, - [JValueInt(index), element.reference.pointer]).check(); + _insertId(this, const jvoidType(), [JValueInt(index), element]); } - static final _insertAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"addAll", r"(ILjava/util/Collection;)Z"); + static final _insertAllId = + _class.instanceMethodId(r"addAll", r"(ILjava/util/Collection;)Z"); @override void insertAll(int index, Iterable<$E> iterable) { if (iterable is JObject && Jni.env.IsInstanceOf((iterable as JObject).reference.pointer, _collectionClass.reference.pointer)) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _insertAllId, - JniCallType.booleanType, - [JValueInt(index), (iterable as JObject).reference.pointer], - ).boolean; + _insertAllId( + this, + const jbooleanType(), + [JValueInt(index), iterable], + ); return; } super.insertAll(index, iterable); } - static final _isEmptyId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"isEmpty", r"()Z"); + static final _isEmptyId = _class.instanceMethodId(r"isEmpty", r"()Z"); @override - bool get isEmpty => Jni.accessors.callMethodWithArgs( - reference.pointer, _isEmptyId, JniCallType.booleanType, []).boolean; + bool get isEmpty => _isEmptyId(this, const jbooleanType(), []); @override bool get isNotEmpty => !isEmpty; - static final _iteratorId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"iterator", r"()Ljava/util/Iterator;"); + static final _iteratorId = + _class.instanceMethodId(r"iterator", r"()Ljava/util/Iterator;"); @override - JIterator<$E> get iterator => - JIteratorType(E).fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _iteratorId, JniCallType.objectType, []).object); + JIterator<$E> get iterator => _iteratorId(this, JIteratorType(E), []); - static final _lastIndexOfId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"lastIndexOf", r"(Ljava/lang/Object;)I"); + static final _lastIndexOfId = + _class.instanceMethodId(r"lastIndexOf", r"(Ljava/lang/Object;)I"); @override int lastIndexOf(Object? element, [int? start]) { if (element is! JObject) return -1; if (start == null || start >= this.length) start = this.length - 1; if (start == this.length - 1) { - return Jni.accessors.callMethodWithArgs(reference.pointer, _lastIndexOfId, - JniCallType.intType, [element.reference.pointer]).integer; + return _lastIndexOfId( + this, const jintType(), [element.reference.pointer]); } final range = getRange(start, length); - final res = Jni.accessors.callMethodWithArgs( - range.reference.pointer, - _lastIndexOfId, - JniCallType.intType, - [element.reference.pointer], - ).integer; + final res = _lastIndexOfId( + range, + const jintType(), + [element], + ); range.release(); return res; } - static final _removeId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"remove", r"(Ljava/lang/Object;)Z"); + static final _removeId = + _class.instanceMethodId(r"remove", r"(Ljava/lang/Object;)Z"); @override bool remove(Object? element) { if (element is! JObject) return false; - return Jni.accessors.callMethodWithArgs(reference.pointer, _removeId, - JniCallType.booleanType, [element.reference.pointer]).boolean; + return _removeId(this, const jbooleanType(), [element.reference.pointer]); } - static final _removeAtId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"remove", r"(I)Ljava/lang/Object;"); + static final _removeAtId = + _class.instanceMethodId(r"remove", r"(I)Ljava/lang/Object;"); @override $E removeAt(int index) { - return E.fromRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _removeAtId, JniCallType.objectType, [JValueInt(index)]).object); + return _removeAtId(this, E, [JValueInt(index)]); } @override diff --git a/pkgs/jni/lib/src/util/jmap.dart b/pkgs/jni/lib/src/util/jmap.dart index cc95b31ac4..baa56874a4 100644 --- a/pkgs/jni/lib/src/util/jmap.dart +++ b/pkgs/jni/lib/src/util/jmap.dart @@ -4,10 +4,8 @@ import 'dart:collection'; -import '../accessors.dart'; -import '../jni.dart'; import '../jobject.dart'; -import '../third_party/jni_bindings_generated.dart'; +import '../jreference.dart'; import '../types.dart'; import 'jset.dart'; @@ -25,7 +23,8 @@ final class JMapType<$K extends JObject, $V extends JObject> String get signature => r"Ljava/util/Map;"; @override - JMap<$K, $V> fromRef(JObjectPtr ref) => JMap.fromRef(K, V, ref); + JMap<$K, $V> fromReference(JReference reference) => + JMap.fromReference(K, V, reference); @override JObjType get superType => const JObjectType(); @@ -54,13 +53,13 @@ class JMap<$K extends JObject, $V extends JObject> extends JObject final JObjType<$K> K; final JObjType<$V> V; - JMap.fromRef( + JMap.fromReference( this.K, this.V, - JObjectPtr ref, - ) : super.fromRef(ref); + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/util/Map"); + static final _class = JClass.forName(r"java/util/Map"); /// The type which includes information such as the signature of this class. static JMapType<$K, $V> type<$K extends JObject, $V extends JObject>( @@ -73,108 +72,91 @@ class JMap<$K extends JObject, $V extends JObject> extends JObject ); } - static final _hashMapClass = Jni.findJClass(r"java/util/HashMap"); - static final _ctorId = Jni.accessors - .getMethodIDOf(_hashMapClass.reference.pointer, r"", r"()V"); + static final _hashMapClass = JClass.forName(r"java/util/HashMap"); + static final _ctorId = _hashMapClass.constructorId(r"()V"); JMap.hash(this.K, this.V) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _hashMapClass.reference.pointer, _ctorId, []).object); + : super.fromReference(_ctorId(_hashMapClass, referenceType, [])); - static final _getId = Jni.accessors.getMethodIDOf(_class.reference.pointer, + static final _getId = _class.instanceMethodId( r"get", r"(Ljava/lang/Object;)Ljava/lang/Object;"); @override $V? operator [](Object? key) { if (key is! JObject) { return null; } - final value = V.fromRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _getId, JniCallType.objectType, [key.reference.pointer]).object); + final value = _getId(this, V, [key.reference.pointer]); return value.isNull ? null : value; } - static final _putId = Jni.accessors.getMethodIDOf(_class.reference.pointer, + static final _putId = _class.instanceMethodId( r"put", r"(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;"); @override void operator []=($K key, $V value) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _putId, - JniCallType.objectType, - [key.reference.pointer, value.reference.pointer]).object; + _putId(this, V, [key.reference.pointer, value.reference.pointer]); } - static final _addAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"putAll", r"(Ljava/util/Map;)V"); + static final _addAllId = + _class.instanceMethodId(r"putAll", r"(Ljava/util/Map;)V"); @override void addAll(Map<$K, $V> other) { if (other is JMap<$K, $V>) { - Jni.accessors.callMethodWithArgs(reference.pointer, _addAllId, - JniCallType.voidType, [other.reference.pointer]).check(); + _addAllId(this, const jvoidType(), [other.reference.pointer]); return; } super.addAll(other); } - static final _clearId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"clear", r"()V"); + static final _clearId = _class.instanceMethodId(r"clear", r"()V"); @override void clear() { - Jni.accessors.callMethodWithArgs( - reference.pointer, _clearId, JniCallType.voidType, []).check(); + _clearId(this, const jvoidType(), []); } - static final _containsKeyId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"containsKey", r"(Ljava/lang/Object;)Z"); + static final _containsKeyId = + _class.instanceMethodId(r"containsKey", r"(Ljava/lang/Object;)Z"); @override bool containsKey(Object? key) { if (key is! JObject) { return false; } - return Jni.accessors.callMethodWithArgs(reference.pointer, _containsKeyId, - JniCallType.booleanType, [key.reference.pointer]).boolean; + return _containsKeyId(this, const jbooleanType(), [key.reference.pointer]); } - static final _containsValueId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"containsValue", r"(Ljava/lang/Object;)Z"); + static final _containsValueId = + _class.instanceMethodId(r"containsValue", r"(Ljava/lang/Object;)Z"); @override bool containsValue(Object? value) { if (value is! JObject) { return false; } - return Jni.accessors.callMethodWithArgs(reference.pointer, _containsValueId, - JniCallType.booleanType, [value.reference.pointer]).boolean; + return _containsValueId( + this, const jbooleanType(), [value.reference.pointer]); } - static final isEmptyId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"isEmpty", r"()Z"); + static final isEmptyId = _class.instanceMethodId(r"isEmpty", r"()Z"); @override - bool get isEmpty => Jni.accessors.callMethodWithArgs( - reference.pointer, isEmptyId, JniCallType.booleanType, []).boolean; + bool get isEmpty => isEmptyId(this, const jbooleanType(), []); @override bool get isNotEmpty => !isEmpty; - static final _keysId = Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"keySet", r"()Ljava/util/Set;"); + static final _keysId = + _class.instanceMethodId(r"keySet", r"()Ljava/util/Set;"); @override - JSet<$K> get keys => JSetType(K).fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _keysId, JniCallType.objectType, []).object); + JSet<$K> get keys => _keysId(this, JSetType(K), []); - static final _sizeId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"size", r"()I"); + static final _sizeId = _class.instanceMethodId(r"size", r"()I"); @override - int get length => Jni.accessors.callMethodWithArgs( - reference.pointer, _sizeId, JniCallType.intType, []).integer; + int get length => _sizeId(this, const jintType(), []); - static final _removeId = Jni.accessors.getMethodIDOf(_class.reference.pointer, + static final _removeId = _class.instanceMethodId( r"remove", r"(Ljava/lang/Object;)Ljava/lang/Object;"); @override $V? remove(Object? key) { if (key is! JObject) { return null; } - final value = V.fromRef(Jni.accessors.callMethodWithArgs(reference.pointer, - _removeId, JniCallType.objectType, [key.reference.pointer]).object); + final value = _removeId(this, V, [key.reference.pointer]); return value.isNull ? null : value; } } diff --git a/pkgs/jni/lib/src/util/jset.dart b/pkgs/jni/lib/src/util/jset.dart index 021de60598..69e841e8c6 100644 --- a/pkgs/jni/lib/src/util/jset.dart +++ b/pkgs/jni/lib/src/util/jset.dart @@ -4,11 +4,9 @@ import 'dart:collection'; -import 'package:jni/src/third_party/generated_bindings.dart'; - -import '../accessors.dart'; import '../jni.dart'; import '../jobject.dart'; +import '../jreference.dart'; import '../types.dart'; import 'jiterator.dart'; @@ -23,7 +21,8 @@ final class JSetType<$E extends JObject> extends JObjType> { String get signature => r"Ljava/util/Set;"; @override - JSet<$E> fromRef(JObjectPtr ref) => JSet.fromRef(E, ref); + JSet<$E> fromReference(JReference reference) => + JSet.fromReference(E, reference); @override JObjType get superType => const JObjectType(); @@ -49,12 +48,12 @@ class JSet<$E extends JObject> extends JObject with SetMixin<$E> { final JObjType<$E> E; - JSet.fromRef( + JSet.fromReference( this.E, - JObjectPtr ref, - ) : super.fromRef(ref); + JReference reference, + ) : super.fromReference(reference); - static final _class = Jni.findJClass(r"java/util/Set"); + static final _class = JClass.forName(r"java/util/Set"); /// The type which includes information such as the signature of this class. static JSetType<$E> type<$E extends JObject>( @@ -65,138 +64,115 @@ class JSet<$E extends JObject> extends JObject with SetMixin<$E> { ); } - static final _hashSetClass = Jni.findJClass(r"java/util/HashSet"); - static final _ctorId = Jni.accessors - .getMethodIDOf(_hashSetClass.reference.pointer, r"", r"()V"); + static final _hashSetClass = JClass.forName(r"java/util/HashSet"); + static final _ctorId = _hashSetClass.constructorId(r"()V"); JSet.hash(this.E) - : super.fromRef(Jni.accessors.newObjectWithArgs( - _hashSetClass.reference.pointer, _ctorId, []).object); + : super.fromReference(_ctorId(_hashSetClass, referenceType, [])); - static final _addId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"add", r"(Ljava/lang/Object;)Z"); + static final _addId = + _class.instanceMethodId(r"add", r"(Ljava/lang/Object;)Z"); @override bool add($E value) { - return Jni.accessors.callMethodWithArgs(reference.pointer, _addId, - JniCallType.booleanType, [value.reference.pointer]).boolean; + return _addId(this, const jbooleanType(), [value.reference.pointer]); } - static final _addAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"addAll", r"(Ljava/util/Collection;)Z"); + static final _addAllId = + _class.instanceMethodId(r"addAll", r"(Ljava/util/Collection;)Z"); @override void addAll(Iterable<$E> elements) { if (elements is JObject && Jni.env.IsInstanceOf((elements as JObject).reference.pointer, _collectionClass.reference.pointer)) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _addAllId, - JniCallType.booleanType, + _addAllId( + this, + const jbooleanType(), [(elements as JObject).reference.pointer], - ).boolean; + ); return; } return super.addAll(elements); } - static final _clearId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"clear", r"()V"); + static final _clearId = _class.instanceMethodId(r"clear", r"()V"); @override void clear() { - return Jni.accessors.callMethodWithArgs( - reference.pointer, _clearId, JniCallType.voidType, []).check(); + _clearId(this, const jvoidType(), []); } - static final _containsId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"contains", r"(Ljava/lang/Object;)Z"); + static final _containsId = + _class.instanceMethodId(r"contains", r"(Ljava/lang/Object;)Z"); @override bool contains(Object? element) { if (element is! JObject) { return false; } - return Jni.accessors.callMethodWithArgs(reference.pointer, _containsId, - JniCallType.booleanType, [element.reference.pointer]).boolean; + return _containsId(this, const jbooleanType(), [element.reference.pointer]); } - static final _containsAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"containsAll", r"(Ljava/util/Collection;)Z"); - static final _collectionClass = Jni.findJClass("java/util/Collection"); + static final _containsAllId = + _class.instanceMethodId(r"containsAll", r"(Ljava/util/Collection;)Z"); + static final _collectionClass = JClass.forName("java/util/Collection"); @override bool containsAll(Iterable other) { if (other is JObject && Jni.env.IsInstanceOf((other as JObject).reference.pointer, _collectionClass.reference.pointer)) { - return Jni.accessors.callMethodWithArgs( - reference.pointer, - _containsAllId, - JniCallType.booleanType, - [(other as JObject).reference.pointer]).boolean; + return _containsAllId( + this, const jbooleanType(), [(other as JObject).reference.pointer]); } return super.containsAll(other); } - static final _isEmptyId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"isEmpty", r"()Z"); + static final _isEmptyId = _class.instanceMethodId(r"isEmpty", r"()Z"); @override - bool get isEmpty => Jni.accessors.callMethodWithArgs( - reference.pointer, _isEmptyId, JniCallType.booleanType, []).boolean; + bool get isEmpty => _isEmptyId(this, const jbooleanType(), []); @override bool get isNotEmpty => !isEmpty; - static final _iteratorId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"iterator", r"()Ljava/util/Iterator;"); + static final _iteratorId = + _class.instanceMethodId(r"iterator", r"()Ljava/util/Iterator;"); @override - JIterator<$E> get iterator => - JIteratorType(E).fromRef(Jni.accessors.callMethodWithArgs( - reference.pointer, _iteratorId, JniCallType.objectType, []).object); + JIterator<$E> get iterator => _iteratorId(this, JIteratorType(E), []); - static final _sizeId = - Jni.accessors.getMethodIDOf(_class.reference.pointer, r"size", r"()I"); + static final _sizeId = _class.instanceMethodId(r"size", r"()I"); @override - int get length => Jni.accessors.callMethodWithArgs( - reference.pointer, _sizeId, JniCallType.intType, []).integer; + int get length => _sizeId(this, const jintType(), []); - static final _removeId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"remove", r"(Ljava/lang/Object;)Z"); + static final _removeId = + _class.instanceMethodId(r"remove", r"(Ljava/lang/Object;)Z"); @override bool remove(Object? value) { if (value is! $E) { return false; } - return Jni.accessors.callMethodWithArgs(reference.pointer, _removeId, - JniCallType.booleanType, [value.reference.pointer]).boolean; + return _removeId(this, const jbooleanType(), [value.reference.pointer]); } - static final _removeAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"removeAll", r"(Ljava/util/Collection;)Z"); + static final _removeAllId = + _class.instanceMethodId(r"removeAll", r"(Ljava/util/Collection;)Z"); @override void removeAll(Iterable elements) { if (elements is JObject && Jni.env.IsInstanceOf((elements as JObject).reference.pointer, _collectionClass.reference.pointer)) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _removeAllId, - JniCallType.booleanType, - [(elements as JObject).reference.pointer]).boolean; + _removeAllId(this, const jbooleanType(), + [(elements as JObject).reference.pointer]); return; } return super.removeAll(elements); } - static final _retainAllId = Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"retainAll", r"(Ljava/util/Collection;)Z"); + static final _retainAllId = + _class.instanceMethodId(r"retainAll", r"(Ljava/util/Collection;)Z"); @override void retainAll(Iterable elements) { if (elements is JObject && Jni.env.IsInstanceOf((elements as JObject).reference.pointer, _collectionClass.reference.pointer)) { - Jni.accessors.callMethodWithArgs( - reference.pointer, - _retainAllId, - JniCallType.booleanType, - [(elements as JObject).reference.pointer]).boolean; + _retainAllId(this, const jbooleanType(), + [(elements as JObject).reference.pointer]); return; } return super.retainAll(elements); diff --git a/pkgs/jni/pubspec.yaml b/pkgs/jni/pubspec.yaml index d753fe4402..014aa9f95b 100644 --- a/pkgs/jni/pubspec.yaml +++ b/pkgs/jni/pubspec.yaml @@ -15,7 +15,7 @@ topics: - jni environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' flutter: '>=2.11.0' dependencies: diff --git a/pkgs/jni/test/exception_test.dart b/pkgs/jni/test/exception_test.dart index 42d2297642..0c45ac8a66 100644 --- a/pkgs/jni/test/exception_test.dart +++ b/pkgs/jni/test/exception_test.dart @@ -35,38 +35,37 @@ void main() { } void run({required TestRunnerCallback testRunner}) { + JObject newRandom(JClass randomClass) { + return randomClass + .constructorId('()V') + .call(randomClass, const JObjectType(), []); + } + testRunner("double free throws exception", () { - final r = Jni.newInstance("java/util/Random", "()V", []); + final rc = JClass.forName('java/util/Random'); + final r = newRandom(rc); r.release(); expect(r.release, throwsA(isA())); }); testRunner("Use after free throws exception", () { - final r = Jni.newInstance("java/util/Random", "()V", []); + final rc = JClass.forName('java/util/Random'); + final r = newRandom(rc); r.release(); - expect(() => r.callMethodByName("nextInt", "(I)I", [JValueInt(256)]), - throwsA(isA())); - }); - - testRunner("void fieldType throws exception", () { - final r = Jni.newInstance("java/util/Random", "()V", []); - expect(() => r.getField(nullptr, JniCallType.voidType), - throwsArgumentError); - expect(() => r.getStaticField(nullptr, JniCallType.voidType), - throwsArgumentError); - }); - - testRunner("Wrong callType throws error", () { - final r = Jni.newInstance("java/util/Random", "()V", []); expect( - () => r.callMethodByName( - "nextInt", "(I)I", [JValueInt(256)], JniCallType.doubleType), - throwsA(isA())); + () => rc + .instanceMethodId("nextInt", "(I)I") + .call(r, const jintType(), [JValueInt(256)]), + throwsA(isA())); }); testRunner("An exception in JNI throws JniException in Dart", () { - final r = Jni.newInstance("java/util/Random", "()V", []); - expect(() => r.callMethodByName("nextInt", "(I)I", [JValueInt(-1)]), + final rc = JClass.forName('java/util/Random'); + final r = newRandom(rc); + expect( + () => rc + .instanceMethodId("nextInt", "(I)I") + .call(r, const jintType(), [JValueInt(-1)]), throwsA(isA())); }); } diff --git a/pkgs/jni/test/global_env_test.dart b/pkgs/jni/test/global_env_test.dart index a5588cd962..3fd5a776a4 100644 --- a/pkgs/jni/test/global_env_test.dart +++ b/pkgs/jni/test/global_env_test.dart @@ -6,7 +6,6 @@ import 'dart:io'; import 'package:ffi/ffi.dart'; import 'package:jni/jni.dart'; -import 'package:jni/src/jvalues.dart'; import 'package:test/test.dart'; import 'test_util/test_util.dart'; @@ -75,7 +74,7 @@ void run({required TestRunnerCallback testRunner}) { // it can be directly placed in the list. To convert into different primitive // types, use JValue wrappers. final jres = env.CallStaticObjectMethodA(integerClass, hexMethod, - Jni.jvalues([JValueInt(i)], allocator: arena)); + toJValues([JValueInt(i)], allocator: arena)); // use asDartString extension method on Pointer // to convert a String jobject result to string @@ -111,10 +110,11 @@ void run({required TestRunnerCallback testRunner}) { integerClass, "parseInt".toNativeChars(arena), "(Ljava/lang/String;)I".toNativeChars(arena)); - final args = JValueArgs(["hello"], arena); + final args = toJValues(["hello".toJString()..releasedBy(arena)], + allocator: arena); expect( () => env.CallStaticIntMethodA( - integerClass, parseIntMethod, args.values), + integerClass, parseIntMethod, args), throwsA(isA())); })); @@ -161,13 +161,24 @@ void run({required TestRunnerCallback testRunner}) { "(Ljava/lang/String;)V".toNativeChars(arena)); const str = "\nHello World from JNI!"; final jstr = env.toJStringPtr(str); - env.CallVoidMethodA(out, println, Jni.jvalues([jstr])); - env.deleteAllRefs([system, printStream, jstr]); + env.CallVoidMethodA( + out, println, toJValues([jstr], allocator: arena)); + env.DeleteGlobalRef(system); + env.DeleteGlobalRef(printStream); + env.DeleteGlobalRef(jstr); })); testRunner( 'Env create reference methods should retain their default behavior', () { - final systemOut = Jni.retrieveStaticField( - "java/lang/System", "out", "Ljava/io/PrintStream;"); + final systemOut = using((arena) { + final systemClass = + env.FindClass("java/lang/System".toNativeChars(arena)); + final outField = env.GetStaticFieldID( + systemClass, + "out".toNativeChars(arena), + "Ljava/io/PrintStream;".toNativeChars(arena)); + env.DeleteGlobalRef(systemClass); + return env.GetStaticObjectField(systemClass, outField); + }); var refType = env.GetObjectRefType(systemOut); expect(refType, equals(JObjectRefType.JNIGlobalRefType)); final localRef = env.NewLocalRef(systemOut); @@ -200,16 +211,28 @@ void run({required TestRunnerCallback testRunner}) { testRunner('class <-> object methods', () { using((arena) { - final systemOut = Jni.retrieveStaticField( - "java/lang/System", "out", "Ljava/io/PrintStream;"); - final systemErr = Jni.retrieveStaticField( - "java/lang/System", "err", "Ljava/io/PrintStream;"); + final systemClass = + env.FindClass("java/lang/System".toNativeChars(arena)); + final outField = env.GetStaticFieldID( + systemClass, + "out".toNativeChars(arena), + "Ljava/io/PrintStream;".toNativeChars(arena)); + final errField = env.GetStaticFieldID( + systemClass, + "err".toNativeChars(arena), + "Ljava/io/PrintStream;".toNativeChars(arena)); + final systemOut = env.GetStaticObjectField(systemClass, outField); + final systemErr = env.GetStaticObjectField(systemClass, errField); final outClass = env.GetObjectClass(systemOut); expect(env.IsInstanceOf(systemOut, outClass), isTrue); expect(env.IsInstanceOf(systemErr, outClass), isTrue); final errClass = env.GetObjectClass(systemErr); expect(env.IsSameObject(outClass, errClass), isTrue); - env.deleteAllRefs([systemOut, systemErr, outClass, errClass]); + env.DeleteGlobalRef(systemClass); + env.DeleteGlobalRef(systemOut); + env.DeleteGlobalRef(systemErr); + env.DeleteGlobalRef(outClass); + env.DeleteGlobalRef(errClass); }); }); } diff --git a/pkgs/jni/test/jarray_test.dart b/pkgs/jni/test/jarray_test.dart index 43d6e5dedc..c445e86cc0 100644 --- a/pkgs/jni/test/jarray_test.dart +++ b/pkgs/jni/test/jarray_test.dart @@ -289,7 +289,7 @@ void run({required TestRunnerCallback testRunner}) { final string = "abc".toJString()..releasedBy(arena); final array = JArray.filled(3, string)..releasedBy(arena); expect( - () => JArray.filled(-3, JString.fromRef(nullptr)), + () => JArray.filled(-3, JString.fromReference(jNullReference)), throwsA(isA()), ); expect(array.length, 3); diff --git a/pkgs/jni/test/jbyte_buffer_test.dart b/pkgs/jni/test/jbyte_buffer_test.dart index 48f9eaf455..2d4de825a0 100644 --- a/pkgs/jni/test/jbyte_buffer_test.dart +++ b/pkgs/jni/test/jbyte_buffer_test.dart @@ -201,8 +201,8 @@ void run({required TestRunnerCallback testRunner}) { final b = testDataBuffer(arena); expect(a.$type, b.$type); expect(a.$type.hashCode, b.$type.hashCode); - final c = JBuffer.fromRef(nullptr); - final d = JBuffer.fromRef(nullptr); + final c = JBuffer.fromReference(jNullReference); + final d = JBuffer.fromReference(jNullReference); expect(c.$type, d.$type); expect(c.$type.hashCode, d.$type.hashCode); diff --git a/pkgs/jni/test/jobject_test.dart b/pkgs/jni/test/jobject_test.dart index cc0c3a25fb..a7273d926a 100644 --- a/pkgs/jni/test/jobject_test.dart +++ b/pkgs/jni/test/jobject_test.dart @@ -25,32 +25,31 @@ void main() { void run({required TestRunnerCallback testRunner}) { // The API based on JniEnv is intended to closely mimic C API of JNI, // And thus can be too verbose for simple experimenting and one-off uses - // JObject API provides an easier way to perform some common operations. + // JClass API provides an easier way to perform some common operations. // // However, if binding generation using jnigen is possible, that should be // the first choice. - testRunner("Long.intValue() using JObject", () { + testRunner("Long.intValue() using JClass", () { // JClass wraps a local class reference, and // provides convenience functions. - final longClass = Jni.findJClass("java/lang/Long"); + final longClass = JClass.forName("java/lang/Long"); - // looks for a constructor with given signature. + // Looks for a constructor with given signature. // equivalently you can lookup a method with name - final longCtor = longClass.getCtorID("(J)V"); + final longCtor = longClass.constructorId("(J)V"); - // note that the arguments are just passed as a list. - // allowed argument types are primitive types, JObject and its subclasses, + // Note that the arguments are just passed as a list. + // Allowed argument types are primitive types, JObject and its subclasses, // and raw JNI references (JObject). Strings will be automatically converted // to JNI strings. - final long = longClass.newInstance(longCtor, [176]); - - final intValue = long.callMethodByName( - "intValue", - "()I", + final long = longCtor(longClass, JObject.type, [176]); + final intValueMethod = longClass.instanceMethodId("intValue", "()I"); + final intValue = intValueMethod( + long, + jint.type, [], - JniCallType.intType, ); - expect(intValue, equals(176)); + expect(intValue, 176); // Release any JObject and JClass instances using `.release()` after use. // This is not strictly required since JNI objects / classes have @@ -60,9 +59,10 @@ void run({required TestRunnerCallback testRunner}) { }); testRunner("call a static method using JClass APIs", () { - final integerClass = Jni.findJClass("java/lang/Integer"); - final result = integerClass.callStaticMethodByName( - "toHexString", "(I)Ljava/lang/String;", [JValueInt(31)]); + final integerClass = JClass.forName("java/lang/Integer"); + final result = + integerClass.staticMethodId("toHexString", "(I)Ljava/lang/String;")( + integerClass, JString.type, [JValueInt(31)]); // If the object is supposed to be a Java string you can call // [toDartString] on it. @@ -70,17 +70,17 @@ void run({required TestRunnerCallback testRunner}) { // Dart string is a copy, original object can be released. result.release(); - expect(resultString, equals("1f")); + expect(resultString, "1f"); // Also don't forget to release the class. integerClass.release(); }); testRunner("Call method with null argument, expect exception", () { - final integerClass = Jni.findJClass("java/lang/Integer"); + final integerClass = JClass.forName("java/lang/Integer"); expect( - () => integerClass.callStaticMethodByName( - "parseInt", "(Ljava/lang/String;)I", [nullptr]), + () => integerClass.staticMethodId("parseInt", "(Ljava/lang/String;)I")( + integerClass, JString.type, [nullptr]), throwsException); integerClass.release(); }); @@ -89,113 +89,99 @@ void run({required TestRunnerCallback testRunner}) { // due to a CheckJNI precondition check. if (!Platform.isAndroid) { testRunner("Try to find a non-exisiting class, expect exception", () { - expect(() => Jni.findJClass("java/lang/NotExists"), throwsException); + expect(() => JClass.forName("java/lang/NotExists"), throwsException); }); } - // [callMethodByName] will be expensive if making same call many times. - // Use [getMethodID] to get a method ID and use it in subsequent calls. - testRunner("Example for using getMethodID", () { - final longClass = Jni.findJClass("java/lang/Long"); - final bitCountMethod = longClass.getStaticMethodID("bitCount", "(J)I"); + testRunner("Example for using methods", () { + final longClass = JClass.forName("java/lang/Long"); + final bitCountMethod = longClass.staticMethodId("bitCount", "(J)I"); - // Use newInstance if you want only one instance. - // It finds the class, gets constructor ID and constructs an instance. - final random = Jni.newInstance("java/util/Random", "()V", []); + final randomClass = JClass.forName("java/util/Random"); + final random = + randomClass.constructorId("()V").call(randomClass, JObject.type, []); - // You don't need a [JClass] reference to get instance method IDs. - final nextIntMethod = random.getMethodID("nextInt", "(I)I"); + final nextIntMethod = randomClass.instanceMethodId("nextInt", "(I)I"); for (int i = 0; i < 100; i++) { - int r = random.callMethod( - nextIntMethod, + int r = nextIntMethod( + random, + jint.type, [JValueInt(256 * 256)], - JniCallType.intType, ); int bits = 0; - final jbc = longClass.callStaticMethod( - bitCountMethod, + final jbc = bitCountMethod( + longClass, + jint.type, [r], - JniCallType.intType, ); while (r != 0) { bits += r % 2; r = (r / 2).floor(); } - expect(jbc, equals(bits)); + expect(jbc, bits); } random.release(); longClass.release(); }); - // One-off invocation of static method in single call. - testRunner("invoke_", () { - final m = Jni.invokeStaticMethod( - "java/lang/Short", - "compare", - "(SS)I", + testRunner("Static method with multiple args", () { + final shortClass = JShort.type.jClass; + final m = shortClass.staticMethodId("compare", "(SS)I").call( + shortClass, + jint.type, [JValueShort(1234), JValueShort(1324)], - JniCallType.intType, ); - expect(m, equals(1234 - 1324)); + expect(m, 1234 - 1324); + shortClass.release(); }); testRunner("Java char from string", () { - final m = Jni.invokeStaticMethod("java/lang/Character", "isLowerCase", - "(C)Z", [JValueChar.fromString('X')]); + final characterClass = JCharacter.type.jClass; + final m = characterClass.staticMethodId("isLowerCase", "(C)Z").call( + characterClass, const jbooleanType(), [JValueChar.fromString('X')]); expect(m, isFalse); + characterClass.release(); }); - // One-off access of static field in single call. - testRunner("Get static field directly", () { - final maxLong = Jni.retrieveStaticField( - "java/lang/Short", "MAX_VALUE", "S", JniCallType.shortType); - expect(maxLong, equals(32767)); + testRunner("Get static field", () { + final shortClass = JShort.type.jClass; + final maxLong = + shortClass.staticFieldId("MAX_VALUE", "S").get(shortClass, jshort.type); + expect(maxLong, 32767); + shortClass.release(); }); - // Use [callStringMethod] if all you care about is a string result - testRunner("callStaticStringMethod", () { - final longClass = Jni.findJClass("java/lang/Long"); + testRunner("Call static method on Long", () { + final longClass = JClass.forName("java/lang/Long"); const n = 1223334444; - final strFromJava = longClass.callStaticMethodByName( - "toOctalString", "(J)Ljava/lang/String;", [n]); - expect(strFromJava, equals(n.toRadixString(8))); + final strFromJava = longClass + .staticMethodId("toOctalString", "(J)Ljava/lang/String;") + .call(longClass, JString.type, [n]); + expect(strFromJava.toDartString(releaseOriginal: true), n.toRadixString(8)); longClass.release(); }); - // In [JObject], [JClass], and retrieve_/invoke_ methods - // you can also pass Dart strings, apart from range of types - // allowed by [Jni.jvalues]. - // They will be converted automatically. - testRunner( - "Passing strings in arguments", - () { - final out = Jni.retrieveStaticField( - "java/lang/System", "out", "Ljava/io/PrintStream;"); - // uncomment next line to see output - // (\n because test runner prints first char at end of the line) - //out.callMethodByName( - // "println", "(Ljava/lang/Object;)V", ["\nWorks (Apparently)"]); - out.release(); - }, - ); - - testRunner("Passing strings in arguments 2", () { - final twelve = Jni.invokeStaticMethod("java/lang/Byte", "parseByte", - "(Ljava/lang/String;)B", ["12"], JniCallType.byteType); - expect(twelve, equals(12)); + testRunner("Passing strings in arguments", () { + final byteClass = JByte.type.jClass; + final parseByte = + byteClass.staticMethodId("parseByte", "(Ljava/lang/String;)B"); + final twelve = parseByte(byteClass, const jbyteType(), ["12".toJString()]); + expect(twelve, 12); + byteClass.release(); }); // You can use() method on JObject for using once and deleting. testRunner("use() method", () { - final randomInt = Jni.newInstance("java/util/Random", "()V", []).use( - (random) => random.callMethodByName( - "nextInt", - "(I)I", - [JValueInt(15)], - JniCallType.intType, - ), - ); + final randomInt = JClass.forName("java/util/Random").use((randomClass) { + return randomClass + .constructorId("()V") + .call(randomClass, JObject.type, []).use((random) { + return randomClass + .instanceMethodId("nextInt", "(I)I") + .call(random, jint.type, [JValueInt(15)]); + }); + }); expect(randomInt, lessThan(15)); }); @@ -204,10 +190,11 @@ void run({required TestRunnerCallback testRunner}) { testRunner('Using arena', () { final objects = []; using((arena) { - final r = Jni.findJClass('java/util/Random')..releasedBy(arena); - final ctor = r.getCtorID("()V"); + final randomClass = JClass.forName('java/util/Random')..releasedBy(arena); + final constructor = randomClass.constructorId('()V'); for (int i = 0; i < 10; i++) { - objects.add(r.newInstance(ctor, [])..releasedBy(arena)); + objects + .add(constructor(randomClass, JObject.type, [])..releasedBy(arena)); } }); for (var object in objects) { @@ -217,17 +204,17 @@ void run({required TestRunnerCallback testRunner}) { testRunner("enums", () { // Don't forget to escape $ in nested type names - final ordinal = Jni.retrieveStaticField( - "java/net/Proxy\$Type", "HTTP", "Ljava/net/Proxy\$Type;") + final proxyTypeClass = JClass.forName("java/net/Proxy\$Type"); + final ordinal = proxyTypeClass + .staticFieldId("HTTP", "Ljava/net/Proxy\$Type;") + .get(proxyTypeClass, JObject.type) .use( - (f) => f.callMethodByName( - "ordinal", - "()I", - [], - JniCallType.intType, - ), - ); - expect(ordinal, equals(1)); + (http) => proxyTypeClass + .instanceMethodId("ordinal", "()I") + .call(http, jint.type, []), + ); + expect(ordinal, 1); + proxyTypeClass.release(); }); testRunner("casting", () { @@ -251,10 +238,14 @@ void run({required TestRunnerCallback testRunner}) { // // otherwise subsequent JNI calls will throw a "library not found" exception. Jni.setDylibDir(dylibDir: "build/jni_libs"); - final random = Jni.newInstance("java/util/Random", "()V", []); - final result = random.callMethodByName( - "nextInt", "(I)I", [256], JniCallType.intType); + final randomClass = JClass.forName("java/util/Random"); + final random = + randomClass.constructorId("()V").call(randomClass, JObject.type, []); + final result = randomClass + .instanceMethodId("nextInt", "(I)I") + .call(random, jint.type, [256]); random.release(); + randomClass.release(); // A workaround for `--pause-isolates-on-exit`. Otherwise getting test // with coverage pauses indefinitely here. // https://github.com/dart-lang/coverage/issues/472 @@ -268,29 +259,33 @@ void run({required TestRunnerCallback testRunner}) { testRunner("Methods rethrow exceptions in Java as JniException", () { expect( - () => Jni.invokeStaticMethod( - "java/lang/Integer", "parseInt", "(Ljava/lang/String;)I", ["X"]), + () { + final integerClass = JInteger.type.jClass; + return JClass.forName("java/lang/Integer") + .staticMethodId("parseInt", "(Ljava/lang/String;)I") + .call(integerClass, jint.type, ["X".toJString()]); + }, throwsA(isA()), ); }); testRunner("Passing long integer values to JNI", () { - final maxLongStr = Jni.invokeStaticMethod( - "java/lang/Long", + final longClass = JLong.type.jClass; + final maxLongStr = longClass + .staticMethodId( "toString", "(J)Ljava/lang/String;", - [maxLongInJava], - ); - expect(maxLongStr, equals('$maxLongInJava')); + ) + .call(longClass, JString.type, [maxLongInJava]); + expect(maxLongStr.toDartString(), '$maxLongInJava'); + longClass.release(); + maxLongStr.release(); }); testRunner('Returning long integers from JNI', () { - final maxLong = Jni.retrieveStaticField( - "java/lang/Long", - "MAX_VALUE", - "J", - JniCallType.longType, - ); - expect(maxLong, equals(maxLongInJava)); + final longClass = JLong.type.jClass; + final maxLong = + longClass.staticFieldId("MAX_VALUE", "J").get(longClass, jlong.type); + expect(maxLong, maxLongInJava); }); } diff --git a/pkgs/jni/test/load_test.dart b/pkgs/jni/test/load_test.dart index ff25bc3b3e..78f26ecd9b 100644 --- a/pkgs/jni/test/load_test.dart +++ b/pkgs/jni/test/load_test.dart @@ -43,19 +43,11 @@ const k256 = 256 * 1024; const secureRandomSeedBound = 4294967296; -JObject getSystemOut() => Jni.retrieveStaticField( - 'System', - 'out', - 'Ljava/io/PrintStream;', - ); - final random = Random.secure(); -JObject newRandom() => Jni.newInstance( - "java/util/Random", - "(J)V", - [random.nextInt(secureRandomSeedBound)], - ); +final randomClass = JClass.forName('java/util/Random'); +JObject newRandom() => randomClass.constructorId('(J)V').call( + randomClass, const JObjectType(), [random.nextInt(secureRandomSeedBound)]); void run({required TestRunnerCallback testRunner}) { testRunner('Test 4K refs can be created in a row', () { @@ -104,9 +96,9 @@ void run({required TestRunnerCallback testRunner}) { // So we are checking if we can run this for large number of times. testRunner('Verify a call returning primitive can be run any times', () { final random = newRandom(); - final nextInt = random.getMethodID("nextInt", "()I"); + final nextInt = randomClass.instanceMethodId('nextInt', '()I'); for (int i = 0; i < k256; i++) { - final rInt = random.callMethod(nextInt, []); + final rInt = nextInt(random, const jintType(), []); expect(rInt, isA()); } }); @@ -114,10 +106,11 @@ void run({required TestRunnerCallback testRunner}) { void testRefValidityAfterGC(int delayInSeconds) { testRunner('Validate reference after GC & ${delayInSeconds}s sleep', () { final random = newRandom(); + final nextInt = randomClass.instanceMethodId('nextInt', '()I'); doGC(); sleep(Duration(seconds: delayInSeconds)); expect( - random.callMethodByName("nextInt", "()I", []), + nextInt(random, const jintType(), []), isA(), ); expect( diff --git a/pkgs/jni/test/type_test.dart b/pkgs/jni/test/type_test.dart index 0ad8490af2..2962b09e92 100644 --- a/pkgs/jni/test/type_test.dart +++ b/pkgs/jni/test/type_test.dart @@ -2,7 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import 'dart:ffi'; import 'dart:io'; import 'package:jni/jni.dart'; @@ -20,15 +19,15 @@ import 'test_util/test_util.dart'; // F class A extends JObject { - A.fromRef(super.reference) : super.fromRef(); + A.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $AType(); } final class $AType extends JObjType { @override - A fromRef(Pointer ref) { - return A.fromRef(ref); + A fromReference(JReference reference) { + return A.fromReference(reference); } @override @@ -50,15 +49,15 @@ final class $AType extends JObjType { } class B extends JObject { - B.fromRef(super.reference) : super.fromRef(); + B.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $BType(); } final class $BType extends JObjType { @override - B fromRef(Pointer ref) { - return B.fromRef(ref); + B fromReference(JReference reference) { + return B.fromReference(reference); } @override @@ -80,7 +79,7 @@ final class $BType extends JObjType { } class C extends A { - C.fromRef(super.reference) : super.fromRef(); + C.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $CType(); @@ -88,8 +87,8 @@ class C extends A { final class $CType extends JObjType { @override - C fromRef(Pointer ref) { - return C.fromRef(ref); + C fromReference(JReference reference) { + return C.fromReference(reference); } @override @@ -111,7 +110,7 @@ final class $CType extends JObjType { } class D extends A { - D.fromRef(super.reference) : super.fromRef(); + D.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $DType(); @@ -119,8 +118,8 @@ class D extends A { final class $DType extends JObjType { @override - D fromRef(Pointer ref) { - return D.fromRef(ref); + D fromReference(JReference reference) { + return D.fromReference(reference); } @override @@ -142,7 +141,7 @@ final class $DType extends JObjType { } class E extends B { - E.fromRef(super.reference) : super.fromRef(); + E.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $EType(); @@ -150,8 +149,8 @@ class E extends B { final class $EType extends JObjType { @override - E fromRef(Pointer ref) { - return E.fromRef(ref); + E fromReference(JReference reference) { + return E.fromReference(reference); } @override @@ -173,7 +172,7 @@ final class $EType extends JObjType { } class F extends C { - F.fromRef(super.reference) : super.fromRef(); + F.fromReference(JReference reference) : super.fromReference(reference); @override JObjType get $type => $FType(); @@ -181,8 +180,8 @@ class F extends C { final class $FType extends JObjType { @override - F fromRef(Pointer ref) { - return F.fromRef(ref); + F fromReference(JReference reference) { + return F.fromReference(reference); } @override diff --git a/pkgs/jni/tool/wrapper_generators/generate_dart_extensions.dart b/pkgs/jni/tool/wrapper_generators/generate_dart_extensions.dart index c78b883687..09c572ff9a 100644 --- a/pkgs/jni/tool/wrapper_generators/generate_dart_extensions.dart +++ b/pkgs/jni/tool/wrapper_generators/generate_dart_extensions.dart @@ -38,13 +38,15 @@ const localEnvType = 'JNINativeInterface'; const jvmType = 'JNIInvokeInterface'; String getCheckedGetter(Type returnType) { + const objectPointerGetter = 'objectPointer'; + if (returnType is PointerType) { final child = returnType.child.getCType(dummyWriter); return 'getPointer<$child>()'; } final cType = returnType.getCType(dummyWriter); if (cType.endsWith("ArrayPtr")) { - return 'object'; + return objectPointerGetter; } const mappings = { 'JBooleanMarker': 'boolean', @@ -56,15 +58,15 @@ String getCheckedGetter(Type returnType) { 'JLongMarker': 'long', 'JFloatMarker': 'float', 'JDoubleMarker': 'doubleFloat', - 'JObjectPtr': 'object', - 'JThrowablePtr': 'object', - 'JStringPtr': 'object', + 'JObjectPtr': objectPointerGetter, + 'JThrowablePtr': objectPointerGetter, + 'JStringPtr': objectPointerGetter, 'JClassPtr': 'value', 'JFieldIDPtr': 'fieldID', 'JMethodIDPtr': 'methodID', 'ffi.Int32': 'integer', 'ffi.Void': 'check()', - 'JWeakPtr': 'object', + 'JWeakPtr': objectPointerGetter, }; if (mappings.containsKey(cType)) { return mappings[cType]!; diff --git a/pkgs/jnigen/CHANGELOG.md b/pkgs/jnigen/CHANGELOG.md index 7fe46187d3..d58f038302 100644 --- a/pkgs/jnigen/CHANGELOG.md +++ b/pkgs/jnigen/CHANGELOG.md @@ -1,5 +1,10 @@ ## 0.8.0-wip +- **Breaking Change** ([#981](https://github.com/dart-lang/native/issues/981)): + - `fromRef` is now `fromReference`, and it gets a `JReference` instead of a + `Pointer`. + - Check out the internal changes to `JObject` in + [`package:jni`'s changelog](https://github.com/dart-lang/native/blob/main/pkgs/jni/CHANGELOG.md#080-wip). - **Breaking Change**: The generated impl class for interfaces is now an `interface`. - **Breaking Change** ([#792](https://github.com/dart-lang/native/issues/792)]): diff --git a/pkgs/jnigen/README.md b/pkgs/jnigen/README.md index a729900c63..bcdd67155c 100644 --- a/pkgs/jnigen/README.md +++ b/pkgs/jnigen/README.md @@ -282,6 +282,10 @@ However there are 2 caveats to this caveat. The JAR files (`$SDK_ROOT/platforms/android-$VERSION/android.jar`) can be used instead. But compiled JARs do not include JavaDoc and method parameter names. This JAR is automatically included by Gradle when `android_sdk_config` >> `add_gradle_deps` is specified. +## Migrating to 0.8.0 + +Check [`jni`'s changelog](https://github.com/dart-lang/native/blob/main/pkgs/jni/CHANGELOG.md#080-wip) and [`jnigen`'s changelog](https://github.com/dart-lang/native/blob/main/pkgs/jnigen/CHANGELOG.md#080-wip). + ## Contributing See the wiki for architecture-related documents. diff --git a/pkgs/jnigen/android_test_runner/pubspec.yaml b/pkgs/jnigen/android_test_runner/pubspec.yaml index fccc86e481..bff92c236e 100644 --- a/pkgs/jnigen/android_test_runner/pubspec.yaml +++ b/pkgs/jnigen/android_test_runner/pubspec.yaml @@ -19,7 +19,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions diff --git a/pkgs/jnigen/example/in_app_java/lib/android_utils.dart b/pkgs/jnigen/example/in_app_java/lib/android_utils.dart index d47f3a1acb..63ca771c12 100644 --- a/pkgs/jnigen/example/in_app_java/lib/android_utils.dart +++ b/pkgs/jnigen/example/in_app_java/lib/android_utils.dart @@ -33,9 +33,9 @@ class EmojiCompat_CodepointSequenceMatchResult extends jni.JObject { late final jni.JObjType $type = type; - EmojiCompat_CodepointSequenceMatchResult.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_CodepointSequenceMatchResult.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_CodepointSequenceMatchResultType(); @@ -50,8 +50,9 @@ final class $EmojiCompat_CodepointSequenceMatchResultType r"Landroidx/emoji2/text/EmojiCompat$CodepointSequenceMatchResult;"; @override - EmojiCompat_CodepointSequenceMatchResult fromRef(jni.JObjectPtr ref) => - EmojiCompat_CodepointSequenceMatchResult.fromRef(ref); + EmojiCompat_CodepointSequenceMatchResult fromReference( + jni.JReference reference) => + EmojiCompat_CodepointSequenceMatchResult.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -79,9 +80,9 @@ class EmojiCompat_Config extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_Config.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_Config.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_ConfigType(); @@ -99,8 +100,8 @@ class EmojiCompat_Config extends jni.JObject { factory EmojiCompat_Config( EmojiCompat_MetadataRepoLoader metadataLoader, ) { - return EmojiCompat_Config.fromRef( - _new0(metadataLoader.reference.pointer).object); + return EmojiCompat_Config.fromReference( + _new0(metadataLoader.reference.pointer).reference); } static final _registerInitCallback = jniLookup< @@ -121,9 +122,9 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config registerInitCallback( EmojiCompat_InitCallback initCallback, ) { - return const $EmojiCompat_ConfigType().fromRef( - _registerInitCallback(reference.pointer, initCallback.reference.pointer) - .object); + return _registerInitCallback( + reference.pointer, initCallback.reference.pointer) + .object(const $EmojiCompat_ConfigType()); } static final _unregisterInitCallback = jniLookup< @@ -144,9 +145,9 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config unregisterInitCallback( EmojiCompat_InitCallback initCallback, ) { - return const $EmojiCompat_ConfigType().fromRef(_unregisterInitCallback( + return _unregisterInitCallback( reference.pointer, initCallback.reference.pointer) - .object); + .object(const $EmojiCompat_ConfigType()); } static final _setReplaceAll = jniLookup< @@ -166,8 +167,8 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setReplaceAll( bool replaceAll, ) { - return const $EmojiCompat_ConfigType() - .fromRef(_setReplaceAll(reference.pointer, replaceAll ? 1 : 0).object); + return _setReplaceAll(reference.pointer, replaceAll ? 1 : 0) + .object(const $EmojiCompat_ConfigType()); } static final _setUseEmojiAsDefaultStyle = jniLookup< @@ -194,9 +195,9 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setUseEmojiAsDefaultStyle( bool useEmojiAsDefaultStyle, ) { - return const $EmojiCompat_ConfigType().fromRef(_setUseEmojiAsDefaultStyle( + return _setUseEmojiAsDefaultStyle( reference.pointer, useEmojiAsDefaultStyle ? 1 : 0) - .object); + .object(const $EmojiCompat_ConfigType()); } static final _setUseEmojiAsDefaultStyle1 = jniLookup< @@ -227,11 +228,11 @@ class EmojiCompat_Config extends jni.JObject { bool useEmojiAsDefaultStyle, jni.JList emojiAsDefaultStyleExceptions, ) { - return const $EmojiCompat_ConfigType().fromRef(_setUseEmojiAsDefaultStyle1( + return _setUseEmojiAsDefaultStyle1( reference.pointer, useEmojiAsDefaultStyle ? 1 : 0, emojiAsDefaultStyleExceptions.reference.pointer) - .object); + .object(const $EmojiCompat_ConfigType()); } static final _setEmojiSpanIndicatorEnabled = jniLookup< @@ -251,10 +252,9 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setEmojiSpanIndicatorEnabled( bool emojiSpanIndicatorEnabled, ) { - return const $EmojiCompat_ConfigType().fromRef( - _setEmojiSpanIndicatorEnabled( - reference.pointer, emojiSpanIndicatorEnabled ? 1 : 0) - .object); + return _setEmojiSpanIndicatorEnabled( + reference.pointer, emojiSpanIndicatorEnabled ? 1 : 0) + .object(const $EmojiCompat_ConfigType()); } static final _setEmojiSpanIndicatorColor = jniLookup< @@ -272,8 +272,8 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setEmojiSpanIndicatorColor( int color, ) { - return const $EmojiCompat_ConfigType() - .fromRef(_setEmojiSpanIndicatorColor(reference.pointer, color).object); + return _setEmojiSpanIndicatorColor(reference.pointer, color) + .object(const $EmojiCompat_ConfigType()); } static final _setMetadataLoadStrategy = jniLookup< @@ -320,8 +320,8 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setMetadataLoadStrategy( int strategy, ) { - return const $EmojiCompat_ConfigType() - .fromRef(_setMetadataLoadStrategy(reference.pointer, strategy).object); + return _setMetadataLoadStrategy(reference.pointer, strategy) + .object(const $EmojiCompat_ConfigType()); } static final _setSpanFactory = jniLookup< @@ -341,8 +341,8 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setSpanFactory( EmojiCompat_SpanFactory factory0, ) { - return const $EmojiCompat_ConfigType().fromRef( - _setSpanFactory(reference.pointer, factory0.reference.pointer).object); + return _setSpanFactory(reference.pointer, factory0.reference.pointer) + .object(const $EmojiCompat_ConfigType()); } static final _setGlyphChecker = jniLookup< @@ -363,9 +363,8 @@ class EmojiCompat_Config extends jni.JObject { EmojiCompat_Config setGlyphChecker( EmojiCompat_GlyphChecker glyphChecker, ) { - return const $EmojiCompat_ConfigType().fromRef( - _setGlyphChecker(reference.pointer, glyphChecker.reference.pointer) - .object); + return _setGlyphChecker(reference.pointer, glyphChecker.reference.pointer) + .object(const $EmojiCompat_ConfigType()); } static final _getMetadataRepoLoader = jniLookup< @@ -379,8 +378,8 @@ class EmojiCompat_Config extends jni.JObject { /// /// Returns the MetadataRepoLoader. EmojiCompat_MetadataRepoLoader getMetadataRepoLoader() { - return const $EmojiCompat_MetadataRepoLoaderType() - .fromRef(_getMetadataRepoLoader(reference.pointer).object); + return _getMetadataRepoLoader(reference.pointer) + .object(const $EmojiCompat_MetadataRepoLoaderType()); } } @@ -391,8 +390,8 @@ final class $EmojiCompat_ConfigType extends jni.JObjType { String get signature => r"Landroidx/emoji2/text/EmojiCompat$Config;"; @override - EmojiCompat_Config fromRef(jni.JObjectPtr ref) => - EmojiCompat_Config.fromRef(ref); + EmojiCompat_Config fromReference(jni.JReference reference) => + EmojiCompat_Config.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -417,9 +416,9 @@ class EmojiCompat_DefaultSpanFactory extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_DefaultSpanFactory.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_DefaultSpanFactory.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_DefaultSpanFactoryType(); @@ -430,7 +429,7 @@ class EmojiCompat_DefaultSpanFactory extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory EmojiCompat_DefaultSpanFactory() { - return EmojiCompat_DefaultSpanFactory.fromRef(_new0().object); + return EmojiCompat_DefaultSpanFactory.fromReference(_new0().reference); } static final _createSpan = jniLookup< @@ -452,8 +451,8 @@ class EmojiCompat_DefaultSpanFactory extends jni.JObject { jni.JObject createSpan( jni.JObject rasterizer, ) { - return const jni.JObjectType().fromRef( - _createSpan(reference.pointer, rasterizer.reference.pointer).object); + return _createSpan(reference.pointer, rasterizer.reference.pointer) + .object(const jni.JObjectType()); } } @@ -466,8 +465,8 @@ final class $EmojiCompat_DefaultSpanFactoryType r"Landroidx/emoji2/text/EmojiCompat$DefaultSpanFactory;"; @override - EmojiCompat_DefaultSpanFactory fromRef(jni.JObjectPtr ref) => - EmojiCompat_DefaultSpanFactory.fromRef(ref); + EmojiCompat_DefaultSpanFactory fromReference(jni.JReference reference) => + EmojiCompat_DefaultSpanFactory.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -492,9 +491,9 @@ class EmojiCompat_GlyphChecker extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_GlyphChecker.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_GlyphChecker.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_GlyphCheckerType(); @@ -567,8 +566,8 @@ final class $EmojiCompat_GlyphCheckerType String get signature => r"Landroidx/emoji2/text/EmojiCompat$GlyphChecker;"; @override - EmojiCompat_GlyphChecker fromRef(jni.JObjectPtr ref) => - EmojiCompat_GlyphChecker.fromRef(ref); + EmojiCompat_GlyphChecker fromReference(jni.JReference reference) => + EmojiCompat_GlyphChecker.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -593,9 +592,9 @@ class EmojiCompat_InitCallback extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_InitCallback.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_InitCallback.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_InitCallbackType(); @@ -606,7 +605,7 @@ class EmojiCompat_InitCallback extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory EmojiCompat_InitCallback() { - return EmojiCompat_InitCallback.fromRef(_new0().object); + return EmojiCompat_InitCallback.fromReference(_new0().reference); } static final _onInitialized = jniLookup< @@ -620,7 +619,7 @@ class EmojiCompat_InitCallback extends jni.JObject { /// Called when EmojiCompat is initialized and the emoji data is loaded. When used on devices /// running API 18 or below, this function is always called. void onInitialized() { - return _onInitialized(reference.pointer).check(); + _onInitialized(reference.pointer).check(); } static final _onFailed = jniLookup< @@ -638,7 +637,7 @@ class EmojiCompat_InitCallback extends jni.JObject { void onFailed( jni.JObject throwable, ) { - return _onFailed(reference.pointer, throwable.reference.pointer).check(); + _onFailed(reference.pointer, throwable.reference.pointer).check(); } } @@ -650,8 +649,8 @@ final class $EmojiCompat_InitCallbackType String get signature => r"Landroidx/emoji2/text/EmojiCompat$InitCallback;"; @override - EmojiCompat_InitCallback fromRef(jni.JObjectPtr ref) => - EmojiCompat_InitCallback.fromRef(ref); + EmojiCompat_InitCallback fromReference(jni.JReference reference) => + EmojiCompat_InitCallback.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -674,9 +673,9 @@ class EmojiCompat_LoadStrategy extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_LoadStrategy.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_LoadStrategy.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_LoadStrategyType(); @@ -690,8 +689,8 @@ final class $EmojiCompat_LoadStrategyType String get signature => r"Landroidx/emoji2/text/EmojiCompat$LoadStrategy;"; @override - EmojiCompat_LoadStrategy fromRef(jni.JObjectPtr ref) => - EmojiCompat_LoadStrategy.fromRef(ref); + EmojiCompat_LoadStrategy fromReference(jni.JReference reference) => + EmojiCompat_LoadStrategy.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -716,9 +715,9 @@ class EmojiCompat_MetadataRepoLoader extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_MetadataRepoLoader.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_MetadataRepoLoader.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_MetadataRepoLoaderType(); @@ -740,7 +739,7 @@ class EmojiCompat_MetadataRepoLoader extends jni.JObject { void load( EmojiCompat_MetadataRepoLoaderCallback loaderCallback, ) { - return _load(reference.pointer, loaderCallback.reference.pointer).check(); + _load(reference.pointer, loaderCallback.reference.pointer).check(); } } @@ -753,8 +752,8 @@ final class $EmojiCompat_MetadataRepoLoaderType r"Landroidx/emoji2/text/EmojiCompat$MetadataRepoLoader;"; @override - EmojiCompat_MetadataRepoLoader fromRef(jni.JObjectPtr ref) => - EmojiCompat_MetadataRepoLoader.fromRef(ref); + EmojiCompat_MetadataRepoLoader fromReference(jni.JReference reference) => + EmojiCompat_MetadataRepoLoader.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -780,9 +779,9 @@ class EmojiCompat_MetadataRepoLoaderCallback extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_MetadataRepoLoaderCallback.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_MetadataRepoLoaderCallback.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_MetadataRepoLoaderCallbackType(); @@ -793,7 +792,8 @@ class EmojiCompat_MetadataRepoLoaderCallback extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory EmojiCompat_MetadataRepoLoaderCallback() { - return EmojiCompat_MetadataRepoLoaderCallback.fromRef(_new0().object); + return EmojiCompat_MetadataRepoLoaderCallback.fromReference( + _new0().reference); } static final _onLoaded = jniLookup< @@ -812,7 +812,7 @@ class EmojiCompat_MetadataRepoLoaderCallback extends jni.JObject { void onLoaded( jni.JObject metadataRepo, ) { - return _onLoaded(reference.pointer, metadataRepo.reference.pointer).check(); + _onLoaded(reference.pointer, metadataRepo.reference.pointer).check(); } static final _onFailed = jniLookup< @@ -831,7 +831,7 @@ class EmojiCompat_MetadataRepoLoaderCallback extends jni.JObject { void onFailed( jni.JObject throwable, ) { - return _onFailed(reference.pointer, throwable.reference.pointer).check(); + _onFailed(reference.pointer, throwable.reference.pointer).check(); } } @@ -844,8 +844,9 @@ final class $EmojiCompat_MetadataRepoLoaderCallbackType r"Landroidx/emoji2/text/EmojiCompat$MetadataRepoLoaderCallback;"; @override - EmojiCompat_MetadataRepoLoaderCallback fromRef(jni.JObjectPtr ref) => - EmojiCompat_MetadataRepoLoaderCallback.fromRef(ref); + EmojiCompat_MetadataRepoLoaderCallback fromReference( + jni.JReference reference) => + EmojiCompat_MetadataRepoLoaderCallback.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -868,9 +869,9 @@ class EmojiCompat_ReplaceStrategy extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_ReplaceStrategy.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_ReplaceStrategy.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_ReplaceStrategyType(); @@ -884,8 +885,8 @@ final class $EmojiCompat_ReplaceStrategyType String get signature => r"Landroidx/emoji2/text/EmojiCompat$ReplaceStrategy;"; @override - EmojiCompat_ReplaceStrategy fromRef(jni.JObjectPtr ref) => - EmojiCompat_ReplaceStrategy.fromRef(ref); + EmojiCompat_ReplaceStrategy fromReference(jni.JReference reference) => + EmojiCompat_ReplaceStrategy.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -915,9 +916,9 @@ class EmojiCompat_SpanFactory extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat_SpanFactory.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat_SpanFactory.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompat_SpanFactoryType(); @@ -940,8 +941,8 @@ class EmojiCompat_SpanFactory extends jni.JObject { jni.JObject createSpan( jni.JObject rasterizer, ) { - return const jni.JObjectType().fromRef( - _createSpan(reference.pointer, rasterizer.reference.pointer).object); + return _createSpan(reference.pointer, rasterizer.reference.pointer) + .object(const jni.JObjectType()); } } @@ -953,8 +954,8 @@ final class $EmojiCompat_SpanFactoryType String get signature => r"Landroidx/emoji2/text/EmojiCompat$SpanFactory;"; @override - EmojiCompat_SpanFactory fromRef(jni.JObjectPtr ref) => - EmojiCompat_SpanFactory.fromRef(ref); + EmojiCompat_SpanFactory fromReference(jni.JReference reference) => + EmojiCompat_SpanFactory.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1025,9 +1026,9 @@ class EmojiCompat extends jni.JObject { @override late final jni.JObjType $type = type; - EmojiCompat.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + EmojiCompat.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $EmojiCompatType(); @@ -1045,8 +1046,8 @@ class EmojiCompat extends jni.JObject { /// If exists, the value for the key is an {@code int} and can be used to query EmojiCompat to /// see whether the widget has the ability to display a certain emoji using /// \#hasEmojiGlyph(CharSequence, int). - static jni.JString get EDITOR_INFO_METAVERSION_KEY => const jni.JStringType() - .fromRef(_get_EDITOR_INFO_METAVERSION_KEY().object); + static jni.JString get EDITOR_INFO_METAVERSION_KEY => + _get_EDITOR_INFO_METAVERSION_KEY().object(const jni.JStringType()); static final _get_EDITOR_INFO_REPLACE_ALL_KEY = jniLookup>( @@ -1058,8 +1059,8 @@ class EmojiCompat extends jni.JObject { /// /// Key in EditorInfo\#extras that represents EmojiCompat.Config\#setReplaceAll(boolean) configuration parameter. The key is added only if /// EmojiCompat is used by the widget. If exists, the value is a boolean. - static jni.JString get EDITOR_INFO_REPLACE_ALL_KEY => const jni.JStringType() - .fromRef(_get_EDITOR_INFO_REPLACE_ALL_KEY().object); + static jni.JString get EDITOR_INFO_REPLACE_ALL_KEY => + _get_EDITOR_INFO_REPLACE_ALL_KEY().object(const jni.JStringType()); /// from: static public final int LOAD_STATE_DEFAULT /// @@ -1252,8 +1253,7 @@ class EmojiCompat extends jni.JObject { static EmojiCompat init( jni.JObject context, ) { - return const $EmojiCompatType() - .fromRef(_init(context.reference.pointer).object); + return _init(context.reference.pointer).object(const $EmojiCompatType()); } static final _init1 = jniLookup< @@ -1272,9 +1272,8 @@ class EmojiCompat extends jni.JObject { jni.JObject context, DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory defaultFactory, ) { - return const $EmojiCompatType().fromRef( - _init1(context.reference.pointer, defaultFactory.reference.pointer) - .object); + return _init1(context.reference.pointer, defaultFactory.reference.pointer) + .object(const $EmojiCompatType()); } static final _init2 = jniLookup< @@ -1295,8 +1294,7 @@ class EmojiCompat extends jni.JObject { static EmojiCompat init2( EmojiCompat_Config config, ) { - return const $EmojiCompatType() - .fromRef(_init2(config.reference.pointer).object); + return _init2(config.reference.pointer).object(const $EmojiCompatType()); } static final _isConfigured = @@ -1334,8 +1332,7 @@ class EmojiCompat extends jni.JObject { static EmojiCompat reset( EmojiCompat_Config config, ) { - return const $EmojiCompatType() - .fromRef(_reset(config.reference.pointer).object); + return _reset(config.reference.pointer).object(const $EmojiCompatType()); } static final _reset1 = jniLookup< @@ -1352,8 +1349,8 @@ class EmojiCompat extends jni.JObject { static EmojiCompat reset1( EmojiCompat emojiCompat, ) { - return const $EmojiCompatType() - .fromRef(_reset1(emojiCompat.reference.pointer).object); + return _reset1(emojiCompat.reference.pointer) + .object(const $EmojiCompatType()); } static final _skipDefaultConfigurationLookup = @@ -1368,7 +1365,7 @@ class EmojiCompat extends jni.JObject { static void skipDefaultConfigurationLookup( bool shouldSkip, ) { - return _skipDefaultConfigurationLookup(shouldSkip ? 1 : 0).check(); + _skipDefaultConfigurationLookup(shouldSkip ? 1 : 0).check(); } static final _get0 = jniLookup>( @@ -1383,7 +1380,7 @@ class EmojiCompat extends jni.JObject { ///@return EmojiCompat instance ///@throws IllegalStateException if called before \#init(EmojiCompat.Config) static EmojiCompat get0() { - return const $EmojiCompatType().fromRef(_get0().object); + return _get0().object(const $EmojiCompatType()); } static final _load = jniLookup< @@ -1408,7 +1405,7 @@ class EmojiCompat extends jni.JObject { ///@throws IllegalStateException when Config\#setMetadataLoadStrategy(int) is not set /// to \#LOAD_STRATEGY_MANUAL void load() { - return _load(reference.pointer).check(); + _load(reference.pointer).check(); } static final _registerInitCallback = jniLookup< @@ -1433,8 +1430,7 @@ class EmojiCompat extends jni.JObject { void registerInitCallback( EmojiCompat_InitCallback initCallback, ) { - return _registerInitCallback( - reference.pointer, initCallback.reference.pointer) + _registerInitCallback(reference.pointer, initCallback.reference.pointer) .check(); } @@ -1454,8 +1450,7 @@ class EmojiCompat extends jni.JObject { void unregisterInitCallback( EmojiCompat_InitCallback initCallback, ) { - return _unregisterInitCallback( - reference.pointer, initCallback.reference.pointer) + _unregisterInitCallback(reference.pointer, initCallback.reference.pointer) .check(); } @@ -1739,8 +1734,8 @@ class EmojiCompat extends jni.JObject { jni.JObject process( jni.JObject charSequence, ) { - return const jni.JObjectType().fromRef( - _process(reference.pointer, charSequence.reference.pointer).object); + return _process(reference.pointer, charSequence.reference.pointer) + .object(const jni.JObjectType()); } static final _process1 = jniLookup< @@ -1785,9 +1780,9 @@ class EmojiCompat extends jni.JObject { int start, int end, ) { - return const jni.JObjectType().fromRef( - _process1(reference.pointer, charSequence.reference.pointer, start, end) - .object); + return _process1( + reference.pointer, charSequence.reference.pointer, start, end) + .object(const jni.JObjectType()); } static final _process2 = jniLookup< @@ -1837,9 +1832,9 @@ class EmojiCompat extends jni.JObject { int end, int maxEmojiCount, ) { - return const jni.JObjectType().fromRef(_process2(reference.pointer, - charSequence.reference.pointer, start, end, maxEmojiCount) - .object); + return _process2(reference.pointer, charSequence.reference.pointer, start, + end, maxEmojiCount) + .object(const jni.JObjectType()); } static final _process3 = jniLookup< @@ -1895,14 +1890,9 @@ class EmojiCompat extends jni.JObject { int maxEmojiCount, int replaceStrategy, ) { - return const jni.JObjectType().fromRef(_process3( - reference.pointer, - charSequence.reference.pointer, - start, - end, - maxEmojiCount, - replaceStrategy) - .object); + return _process3(reference.pointer, charSequence.reference.pointer, start, + end, maxEmojiCount, replaceStrategy) + .object(const jni.JObjectType()); } static final _getAssetSignature = jniLookup< @@ -1919,8 +1909,8 @@ class EmojiCompat extends jni.JObject { /// then previous executions. When used on devices running API 18 or below, returns empty string. ///@throws IllegalStateException if not initialized yet jni.JString getAssetSignature() { - return const jni.JStringType() - .fromRef(_getAssetSignature(reference.pointer).object); + return _getAssetSignature(reference.pointer) + .object(const jni.JStringType()); } static final _updateEditorInfo = jniLookup< @@ -1951,8 +1941,7 @@ class EmojiCompat extends jni.JObject { void updateEditorInfo( jni.JObject outAttrs, ) { - return _updateEditorInfo(reference.pointer, outAttrs.reference.pointer) - .check(); + _updateEditorInfo(reference.pointer, outAttrs.reference.pointer).check(); } } @@ -1963,7 +1952,8 @@ final class $EmojiCompatType extends jni.JObjType { String get signature => r"Landroidx/emoji2/text/EmojiCompat;"; @override - EmojiCompat fromRef(jni.JObjectPtr ref) => EmojiCompat.fromRef(ref); + EmojiCompat fromReference(jni.JReference reference) => + EmojiCompat.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1992,9 +1982,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory .JObjType $type = type; - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = @@ -2012,8 +2002,8 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory factory DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory( DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper helper, ) { - return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory.fromRef( - _new0(helper.reference.pointer).object); + return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory + .fromReference(_new0(helper.reference.pointer).reference); } static final _create = jniLookup< @@ -2033,8 +2023,8 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory EmojiCompat_Config create( jni.JObject context, ) { - return const $EmojiCompat_ConfigType() - .fromRef(_create(reference.pointer, context.reference.pointer).object); + return _create(reference.pointer, context.reference.pointer) + .object(const $EmojiCompat_ConfigType()); } } @@ -2048,9 +2038,10 @@ final class $DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactoryType r"Landroidx/emoji2/text/DefaultEmojiCompatConfig$DefaultEmojiCompatConfigFactory;"; @override - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory fromRef( - jni.JObjectPtr ref) => - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory fromReference( + jni.JReference reference) => + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigFactory.fromReference( + reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2081,9 +2072,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper .JObjType $type = type; - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = @@ -2095,8 +2086,8 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper() { - return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper.fromRef( - _new0().object); + return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper + .fromReference(_new0().reference); } static final _getSigningSignatures = jniLookup< @@ -2116,12 +2107,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper jni.JObject packageManager, jni.JString providerPackage, ) { - return const jni.JArrayType(jni.JObjectType()).fromRef( - _getSigningSignatures( - reference.pointer, - packageManager.reference.pointer, - providerPackage.reference.pointer) - .object); + return _getSigningSignatures(reference.pointer, + packageManager.reference.pointer, providerPackage.reference.pointer) + .object(const jni.JArrayType(jni.JObjectType())); } static final _queryIntentContentProviders = jniLookup< @@ -2145,13 +2133,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper jni.JObject intent, int flags, ) { - return const jni.JListType(jni.JObjectType()).fromRef( - _queryIntentContentProviders( - reference.pointer, - packageManager.reference.pointer, - intent.reference.pointer, - flags) - .object); + return _queryIntentContentProviders(reference.pointer, + packageManager.reference.pointer, intent.reference.pointer, flags) + .object(const jni.JListType(jni.JObjectType())); } static final _getProviderInfo = jniLookup< @@ -2172,9 +2156,8 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper jni.JObject getProviderInfo( jni.JObject resolveInfo, ) { - return const jni.JObjectType().fromRef( - _getProviderInfo(reference.pointer, resolveInfo.reference.pointer) - .object); + return _getProviderInfo(reference.pointer, resolveInfo.reference.pointer) + .object(const jni.JObjectType()); } } @@ -2188,9 +2171,10 @@ final class $DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelperType r"Landroidx/emoji2/text/DefaultEmojiCompatConfig$DefaultEmojiCompatConfigHelper;"; @override - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper fromRef( - jni.JObjectPtr ref) => - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper fromReference( + jni.JReference reference) => + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper.fromReference( + reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2221,9 +2205,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 .JObjType $type = type; - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = @@ -2236,7 +2220,7 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 /// The returned object must be released after use, by calling the [release] method. factory DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19() { return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 - .fromRef(_new0().object); + .fromReference(_new0().reference); } static final _queryIntentContentProviders = jniLookup< @@ -2258,13 +2242,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 jni.JObject intent, int flags, ) { - return const jni.JListType(jni.JObjectType()).fromRef( - _queryIntentContentProviders( - reference.pointer, - packageManager.reference.pointer, - intent.reference.pointer, - flags) - .object); + return _queryIntentContentProviders(reference.pointer, + packageManager.reference.pointer, intent.reference.pointer, flags) + .object(const jni.JListType(jni.JObjectType())); } static final _getProviderInfo = jniLookup< @@ -2281,9 +2261,8 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 jni.JObject getProviderInfo( jni.JObject resolveInfo, ) { - return const jni.JObjectType().fromRef( - _getProviderInfo(reference.pointer, resolveInfo.reference.pointer) - .object); + return _getProviderInfo(reference.pointer, resolveInfo.reference.pointer) + .object(const jni.JObjectType()); } } @@ -2297,10 +2276,10 @@ final class $DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19Type r"Landroidx/emoji2/text/DefaultEmojiCompatConfig$DefaultEmojiCompatConfigHelper_API19;"; @override - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 fromRef( - jni.JObjectPtr ref) => - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19.fromRef( - ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 fromReference( + jni.JReference reference) => + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API19 + .fromReference(reference); @override jni.JObjType get superType => @@ -2334,9 +2313,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 .JObjType $type = type; - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = @@ -2349,7 +2328,7 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 /// The returned object must be released after use, by calling the [release] method. factory DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28() { return DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 - .fromRef(_new0().object); + .fromReference(_new0().reference); } static final _getSigningSignatures1 = jniLookup< @@ -2367,12 +2346,9 @@ class DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 jni.JObject packageManager, jni.JString providerPackage, ) { - return const jni.JArrayType(jni.JObjectType()).fromRef( - _getSigningSignatures1( - reference.pointer, - packageManager.reference.pointer, - providerPackage.reference.pointer) - .object); + return _getSigningSignatures1(reference.pointer, + packageManager.reference.pointer, providerPackage.reference.pointer) + .object(const jni.JArrayType(jni.JObjectType())); } } @@ -2386,10 +2362,10 @@ final class $DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28Type r"Landroidx/emoji2/text/DefaultEmojiCompatConfig$DefaultEmojiCompatConfigHelper_API28;"; @override - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 fromRef( - jni.JObjectPtr ref) => - DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28.fromRef( - ref); + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 fromReference( + jni.JReference reference) => + DefaultEmojiCompatConfig_DefaultEmojiCompatConfigHelper_API28 + .fromReference(reference); @override jni.JObjType get superType => @@ -2452,9 +2428,9 @@ class DefaultEmojiCompatConfig extends jni.JObject { @override late final jni.JObjType $type = type; - DefaultEmojiCompatConfig.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + DefaultEmojiCompatConfig.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $DefaultEmojiCompatConfigType(); @@ -2479,8 +2455,7 @@ class DefaultEmojiCompatConfig extends jni.JObject { static jni.JObject create( jni.JObject context, ) { - return const jni.JObjectType() - .fromRef(_create(context.reference.pointer).object); + return _create(context.reference.pointer).object(const jni.JObjectType()); } } @@ -2492,8 +2467,8 @@ final class $DefaultEmojiCompatConfigType String get signature => r"Landroidx/emoji2/text/DefaultEmojiCompatConfig;"; @override - DefaultEmojiCompatConfig fromRef(jni.JObjectPtr ref) => - DefaultEmojiCompatConfig.fromRef(ref); + DefaultEmojiCompatConfig fromReference(jni.JReference reference) => + DefaultEmojiCompatConfig.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2516,9 +2491,9 @@ class Build_Partition extends jni.JObject { @override late final jni.JObjType $type = type; - Build_Partition.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Build_Partition.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Build_PartitionType(); @@ -2530,7 +2505,7 @@ class Build_Partition extends jni.JObject { /// from: static public final java.lang.String PARTITION_NAME_SYSTEM /// The returned object must be released after use, by calling the [release] method. static jni.JString get PARTITION_NAME_SYSTEM => - const jni.JStringType().fromRef(_get_PARTITION_NAME_SYSTEM().object); + _get_PARTITION_NAME_SYSTEM().object(const jni.JStringType()); static final _getName = jniLookup< ffi @@ -2541,7 +2516,7 @@ class Build_Partition extends jni.JObject { /// from: public java.lang.String getName() /// The returned object must be released after use, by calling the [release] method. jni.JString getName() { - return const jni.JStringType().fromRef(_getName(reference.pointer).object); + return _getName(reference.pointer).object(const jni.JStringType()); } static final _getFingerprint = jniLookup< @@ -2553,8 +2528,7 @@ class Build_Partition extends jni.JObject { /// from: public java.lang.String getFingerprint() /// The returned object must be released after use, by calling the [release] method. jni.JString getFingerprint() { - return const jni.JStringType() - .fromRef(_getFingerprint(reference.pointer).object); + return _getFingerprint(reference.pointer).object(const jni.JStringType()); } static final _getBuildTimeMillis = jniLookup< @@ -2602,7 +2576,8 @@ final class $Build_PartitionType extends jni.JObjType { String get signature => r"Landroid/os/Build$Partition;"; @override - Build_Partition fromRef(jni.JObjectPtr ref) => Build_Partition.fromRef(ref); + Build_Partition fromReference(jni.JReference reference) => + Build_Partition.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2625,9 +2600,9 @@ class Build_VERSION extends jni.JObject { @override late final jni.JObjType $type = type; - Build_VERSION.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Build_VERSION.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Build_VERSIONType(); @@ -2639,7 +2614,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String BASE_OS /// The returned object must be released after use, by calling the [release] method. static jni.JString get BASE_OS => - const jni.JStringType().fromRef(_get_BASE_OS().object); + _get_BASE_OS().object(const jni.JStringType()); static final _get_CODENAME = jniLookup>( @@ -2649,7 +2624,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String CODENAME /// The returned object must be released after use, by calling the [release] method. static jni.JString get CODENAME => - const jni.JStringType().fromRef(_get_CODENAME().object); + _get_CODENAME().object(const jni.JStringType()); static final _get_INCREMENTAL = jniLookup>( @@ -2659,7 +2634,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String INCREMENTAL /// The returned object must be released after use, by calling the [release] method. static jni.JString get INCREMENTAL => - const jni.JStringType().fromRef(_get_INCREMENTAL().object); + _get_INCREMENTAL().object(const jni.JStringType()); static final _get_MEDIA_PERFORMANCE_CLASS = jniLookup>( @@ -2686,7 +2661,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String RELEASE /// The returned object must be released after use, by calling the [release] method. static jni.JString get RELEASE => - const jni.JStringType().fromRef(_get_RELEASE().object); + _get_RELEASE().object(const jni.JStringType()); static final _get_RELEASE_OR_CODENAME = jniLookup>( @@ -2696,7 +2671,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String RELEASE_OR_CODENAME /// The returned object must be released after use, by calling the [release] method. static jni.JString get RELEASE_OR_CODENAME => - const jni.JStringType().fromRef(_get_RELEASE_OR_CODENAME().object); + _get_RELEASE_OR_CODENAME().object(const jni.JStringType()); static final _get_RELEASE_OR_PREVIEW_DISPLAY = jniLookup>( @@ -2706,7 +2681,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String RELEASE_OR_PREVIEW_DISPLAY /// The returned object must be released after use, by calling the [release] method. static jni.JString get RELEASE_OR_PREVIEW_DISPLAY => - const jni.JStringType().fromRef(_get_RELEASE_OR_PREVIEW_DISPLAY().object); + _get_RELEASE_OR_PREVIEW_DISPLAY().object(const jni.JStringType()); static final _get_SDK = jniLookup>( @@ -2715,8 +2690,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String SDK /// The returned object must be released after use, by calling the [release] method. - static jni.JString get SDK => - const jni.JStringType().fromRef(_get_SDK().object); + static jni.JString get SDK => _get_SDK().object(const jni.JStringType()); static final _get_SDK_INT = jniLookup>( @@ -2734,7 +2708,7 @@ class Build_VERSION extends jni.JObject { /// from: static public final java.lang.String SECURITY_PATCH /// The returned object must be released after use, by calling the [release] method. static jni.JString get SECURITY_PATCH => - const jni.JStringType().fromRef(_get_SECURITY_PATCH().object); + _get_SECURITY_PATCH().object(const jni.JStringType()); static final _new0 = jniLookup>( "Build_VERSION__new0") @@ -2743,7 +2717,7 @@ class Build_VERSION extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Build_VERSION() { - return Build_VERSION.fromRef(_new0().object); + return Build_VERSION.fromReference(_new0().reference); } } @@ -2754,7 +2728,8 @@ final class $Build_VERSIONType extends jni.JObjType { String get signature => r"Landroid/os/Build$VERSION;"; @override - Build_VERSION fromRef(jni.JObjectPtr ref) => Build_VERSION.fromRef(ref); + Build_VERSION fromReference(jni.JReference reference) => + Build_VERSION.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2777,9 +2752,9 @@ class Build_VERSION_CODES extends jni.JObject { @override late final jni.JObjType $type = type; - Build_VERSION_CODES.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Build_VERSION_CODES.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Build_VERSION_CODESType(); @@ -2892,7 +2867,7 @@ class Build_VERSION_CODES extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Build_VERSION_CODES() { - return Build_VERSION_CODES.fromRef(_new0().object); + return Build_VERSION_CODES.fromReference(_new0().reference); } } @@ -2903,8 +2878,8 @@ final class $Build_VERSION_CODESType extends jni.JObjType { String get signature => r"Landroid/os/Build$VERSION_CODES;"; @override - Build_VERSION_CODES fromRef(jni.JObjectPtr ref) => - Build_VERSION_CODES.fromRef(ref); + Build_VERSION_CODES fromReference(jni.JReference reference) => + Build_VERSION_CODES.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2927,9 +2902,9 @@ class Build extends jni.JObject { @override late final jni.JObjType $type = type; - Build.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Build.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $BuildType(); @@ -2940,8 +2915,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String BOARD /// The returned object must be released after use, by calling the [release] method. - static jni.JString get BOARD => - const jni.JStringType().fromRef(_get_BOARD().object); + static jni.JString get BOARD => _get_BOARD().object(const jni.JStringType()); static final _get_BOOTLOADER = jniLookup>( @@ -2951,7 +2925,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String BOOTLOADER /// The returned object must be released after use, by calling the [release] method. static jni.JString get BOOTLOADER => - const jni.JStringType().fromRef(_get_BOOTLOADER().object); + _get_BOOTLOADER().object(const jni.JStringType()); static final _get_BRAND = jniLookup>( @@ -2960,8 +2934,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String BRAND /// The returned object must be released after use, by calling the [release] method. - static jni.JString get BRAND => - const jni.JStringType().fromRef(_get_BRAND().object); + static jni.JString get BRAND => _get_BRAND().object(const jni.JStringType()); static final _get_CPU_ABI = jniLookup>( @@ -2971,7 +2944,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String CPU_ABI /// The returned object must be released after use, by calling the [release] method. static jni.JString get CPU_ABI => - const jni.JStringType().fromRef(_get_CPU_ABI().object); + _get_CPU_ABI().object(const jni.JStringType()); static final _get_CPU_ABI2 = jniLookup>( @@ -2981,7 +2954,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String CPU_ABI2 /// The returned object must be released after use, by calling the [release] method. static jni.JString get CPU_ABI2 => - const jni.JStringType().fromRef(_get_CPU_ABI2().object); + _get_CPU_ABI2().object(const jni.JStringType()); static final _get_DEVICE = jniLookup>( @@ -2991,7 +2964,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String DEVICE /// The returned object must be released after use, by calling the [release] method. static jni.JString get DEVICE => - const jni.JStringType().fromRef(_get_DEVICE().object); + _get_DEVICE().object(const jni.JStringType()); static final _get_DISPLAY = jniLookup>( @@ -3001,7 +2974,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String DISPLAY /// The returned object must be released after use, by calling the [release] method. static jni.JString get DISPLAY => - const jni.JStringType().fromRef(_get_DISPLAY().object); + _get_DISPLAY().object(const jni.JStringType()); static final _get_FINGERPRINT = jniLookup>( @@ -3011,7 +2984,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String FINGERPRINT /// The returned object must be released after use, by calling the [release] method. static jni.JString get FINGERPRINT => - const jni.JStringType().fromRef(_get_FINGERPRINT().object); + _get_FINGERPRINT().object(const jni.JStringType()); static final _get_HARDWARE = jniLookup>( @@ -3021,7 +2994,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String HARDWARE /// The returned object must be released after use, by calling the [release] method. static jni.JString get HARDWARE => - const jni.JStringType().fromRef(_get_HARDWARE().object); + _get_HARDWARE().object(const jni.JStringType()); static final _get_HOST = jniLookup>("get_Build__HOST") @@ -3029,8 +3002,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String HOST /// The returned object must be released after use, by calling the [release] method. - static jni.JString get HOST => - const jni.JStringType().fromRef(_get_HOST().object); + static jni.JString get HOST => _get_HOST().object(const jni.JStringType()); static final _get_ID = jniLookup>("get_Build__ID") @@ -3038,8 +3010,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String ID /// The returned object must be released after use, by calling the [release] method. - static jni.JString get ID => - const jni.JStringType().fromRef(_get_ID().object); + static jni.JString get ID => _get_ID().object(const jni.JStringType()); static final _get_MANUFACTURER = jniLookup>( @@ -3049,7 +3020,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String MANUFACTURER /// The returned object must be released after use, by calling the [release] method. static jni.JString get MANUFACTURER => - const jni.JStringType().fromRef(_get_MANUFACTURER().object); + _get_MANUFACTURER().object(const jni.JStringType()); static final _get_MODEL = jniLookup>( @@ -3058,8 +3029,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String MODEL /// The returned object must be released after use, by calling the [release] method. - static jni.JString get MODEL => - const jni.JStringType().fromRef(_get_MODEL().object); + static jni.JString get MODEL => _get_MODEL().object(const jni.JStringType()); static final _get_ODM_SKU = jniLookup>( @@ -3069,7 +3039,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String ODM_SKU /// The returned object must be released after use, by calling the [release] method. static jni.JString get ODM_SKU => - const jni.JStringType().fromRef(_get_ODM_SKU().object); + _get_ODM_SKU().object(const jni.JStringType()); static final _get_PRODUCT = jniLookup>( @@ -3079,7 +3049,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String PRODUCT /// The returned object must be released after use, by calling the [release] method. static jni.JString get PRODUCT => - const jni.JStringType().fromRef(_get_PRODUCT().object); + _get_PRODUCT().object(const jni.JStringType()); static final _get_RADIO = jniLookup>( @@ -3088,8 +3058,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String RADIO /// The returned object must be released after use, by calling the [release] method. - static jni.JString get RADIO => - const jni.JStringType().fromRef(_get_RADIO().object); + static jni.JString get RADIO => _get_RADIO().object(const jni.JStringType()); static final _get_SERIAL = jniLookup>( @@ -3099,7 +3068,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String SERIAL /// The returned object must be released after use, by calling the [release] method. static jni.JString get SERIAL => - const jni.JStringType().fromRef(_get_SERIAL().object); + _get_SERIAL().object(const jni.JStringType()); static final _get_SKU = jniLookup>("get_Build__SKU") @@ -3107,8 +3076,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String SKU /// The returned object must be released after use, by calling the [release] method. - static jni.JString get SKU => - const jni.JStringType().fromRef(_get_SKU().object); + static jni.JString get SKU => _get_SKU().object(const jni.JStringType()); static final _get_SOC_MANUFACTURER = jniLookup>( @@ -3118,7 +3086,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String SOC_MANUFACTURER /// The returned object must be released after use, by calling the [release] method. static jni.JString get SOC_MANUFACTURER => - const jni.JStringType().fromRef(_get_SOC_MANUFACTURER().object); + _get_SOC_MANUFACTURER().object(const jni.JStringType()); static final _get_SOC_MODEL = jniLookup>( @@ -3128,7 +3096,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String SOC_MODEL /// The returned object must be released after use, by calling the [release] method. static jni.JString get SOC_MODEL => - const jni.JStringType().fromRef(_get_SOC_MODEL().object); + _get_SOC_MODEL().object(const jni.JStringType()); static final _get_SUPPORTED_32_BIT_ABIS = jniLookup>( @@ -3138,8 +3106,8 @@ class Build extends jni.JObject { /// from: static public final java.lang.String[] SUPPORTED_32_BIT_ABIS /// The returned object must be released after use, by calling the [release] method. static jni.JArray get SUPPORTED_32_BIT_ABIS => - const jni.JArrayType(jni.JStringType()) - .fromRef(_get_SUPPORTED_32_BIT_ABIS().object); + _get_SUPPORTED_32_BIT_ABIS() + .object(const jni.JArrayType(jni.JStringType())); static final _get_SUPPORTED_64_BIT_ABIS = jniLookup>( @@ -3149,8 +3117,8 @@ class Build extends jni.JObject { /// from: static public final java.lang.String[] SUPPORTED_64_BIT_ABIS /// The returned object must be released after use, by calling the [release] method. static jni.JArray get SUPPORTED_64_BIT_ABIS => - const jni.JArrayType(jni.JStringType()) - .fromRef(_get_SUPPORTED_64_BIT_ABIS().object); + _get_SUPPORTED_64_BIT_ABIS() + .object(const jni.JArrayType(jni.JStringType())); static final _get_SUPPORTED_ABIS = jniLookup>( @@ -3160,8 +3128,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String[] SUPPORTED_ABIS /// The returned object must be released after use, by calling the [release] method. static jni.JArray get SUPPORTED_ABIS => - const jni.JArrayType(jni.JStringType()) - .fromRef(_get_SUPPORTED_ABIS().object); + _get_SUPPORTED_ABIS().object(const jni.JArrayType(jni.JStringType())); static final _get_TAGS = jniLookup>("get_Build__TAGS") @@ -3169,8 +3136,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String TAGS /// The returned object must be released after use, by calling the [release] method. - static jni.JString get TAGS => - const jni.JStringType().fromRef(_get_TAGS().object); + static jni.JString get TAGS => _get_TAGS().object(const jni.JStringType()); static final _get_TIME = jniLookup>("get_Build__TIME") @@ -3185,8 +3151,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String TYPE /// The returned object must be released after use, by calling the [release] method. - static jni.JString get TYPE => - const jni.JStringType().fromRef(_get_TYPE().object); + static jni.JString get TYPE => _get_TYPE().object(const jni.JStringType()); static final _get_UNKNOWN = jniLookup>( @@ -3196,7 +3161,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String UNKNOWN /// The returned object must be released after use, by calling the [release] method. static jni.JString get UNKNOWN => - const jni.JStringType().fromRef(_get_UNKNOWN().object); + _get_UNKNOWN().object(const jni.JStringType()); static final _get_USER = jniLookup>("get_Build__USER") @@ -3204,8 +3169,7 @@ class Build extends jni.JObject { /// from: static public final java.lang.String USER /// The returned object must be released after use, by calling the [release] method. - static jni.JString get USER => - const jni.JStringType().fromRef(_get_USER().object); + static jni.JString get USER => _get_USER().object(const jni.JStringType()); static final _new0 = jniLookup>("Build__new0") @@ -3214,7 +3178,7 @@ class Build extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Build() { - return Build.fromRef(_new0().object); + return Build.fromReference(_new0().reference); } static final _getSerial = @@ -3225,7 +3189,7 @@ class Build extends jni.JObject { /// from: static public java.lang.String getSerial() /// The returned object must be released after use, by calling the [release] method. static jni.JString getSerial() { - return const jni.JStringType().fromRef(_getSerial().object); + return _getSerial().object(const jni.JStringType()); } static final _getFingerprintedPartitions = @@ -3236,8 +3200,8 @@ class Build extends jni.JObject { /// from: static public java.util.List getFingerprintedPartitions() /// The returned object must be released after use, by calling the [release] method. static jni.JList getFingerprintedPartitions() { - return const jni.JListType($Build_PartitionType()) - .fromRef(_getFingerprintedPartitions().object); + return _getFingerprintedPartitions() + .object(const jni.JListType($Build_PartitionType())); } static final _getRadioVersion = @@ -3248,7 +3212,7 @@ class Build extends jni.JObject { /// from: static public java.lang.String getRadioVersion() /// The returned object must be released after use, by calling the [release] method. static jni.JString getRadioVersion() { - return const jni.JStringType().fromRef(_getRadioVersion().object); + return _getRadioVersion().object(const jni.JStringType()); } } @@ -3259,7 +3223,8 @@ final class $BuildType extends jni.JObjType { String get signature => r"Landroid/os/Build;"; @override - Build fromRef(jni.JObjectPtr ref) => Build.fromRef(ref); + Build fromReference(jni.JReference reference) => + Build.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3285,11 +3250,11 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> final jni.JObjType<$K> K; final jni.JObjType<$V> V; - HashMap.fromRef( + HashMap.fromReference( this.K, this.V, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $HashMapType<$K, $V> @@ -3316,7 +3281,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> required jni.JObjType<$K> K, required jni.JObjType<$V> V, }) { - return HashMap.fromRef(K, V, _new0(i, f).object); + return HashMap.fromReference(K, V, _new0(i, f).reference); } static final _new1 = @@ -3331,7 +3296,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> required jni.JObjType<$K> K, required jni.JObjType<$V> V, }) { - return HashMap.fromRef(K, V, _new1(i).object); + return HashMap.fromReference(K, V, _new1(i).reference); } static final _new2 = @@ -3344,7 +3309,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> required jni.JObjType<$K> K, required jni.JObjType<$V> V, }) { - return HashMap.fromRef(K, V, _new2().object); + return HashMap.fromReference(K, V, _new2().reference); } static final _new3 = jniLookup< @@ -3365,7 +3330,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> V ??= jni.lowestCommonSuperType([ (map.$type as jni.JMapType).V, ]) as jni.JObjType<$V>; - return HashMap.fromRef(K, V, _new3(map.reference.pointer).object); + return HashMap.fromReference(K, V, _new3(map.reference.pointer).reference); } static final _size = jniLookup< @@ -3402,7 +3367,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $V get0( jni.JObject object, ) { - return V.fromRef(_get0(reference.pointer, object.reference.pointer).object); + return _get0(reference.pointer, object.reference.pointer).object(V); } static final _containsKey = jniLookup< @@ -3436,9 +3401,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, $V object1, ) { - return V.fromRef(_put(reference.pointer, object.reference.pointer, + return _put(reference.pointer, object.reference.pointer, object1.reference.pointer) - .object); + .object(V); } static final _putAll = jniLookup< @@ -3453,7 +3418,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> void putAll( jni.JMap<$K, $V> map, ) { - return _putAll(reference.pointer, map.reference.pointer).check(); + _putAll(reference.pointer, map.reference.pointer).check(); } static final _remove = jniLookup< @@ -3469,8 +3434,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $V remove( jni.JObject object, ) { - return V - .fromRef(_remove(reference.pointer, object.reference.pointer).object); + return _remove(reference.pointer, object.reference.pointer).object(V); } static final _clear = jniLookup< @@ -3480,7 +3444,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public void clear() void clear() { - return _clear(reference.pointer).check(); + _clear(reference.pointer).check(); } static final _containsValue = jniLookup< @@ -3506,7 +3470,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public java.util.Set keySet() /// The returned object must be released after use, by calling the [release] method. jni.JSet<$K> keySet() { - return jni.JSetType(K).fromRef(_keySet(reference.pointer).object); + return _keySet(reference.pointer).object(jni.JSetType(K)); } static final _values = jniLookup< @@ -3517,7 +3481,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public java.util.Collection values() /// The returned object must be released after use, by calling the [release] method. jni.JObject values() { - return const jni.JObjectType().fromRef(_values(reference.pointer).object); + return _values(reference.pointer).object(const jni.JObjectType()); } static final _entrySet = jniLookup< @@ -3529,8 +3493,8 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public java.util.Set entrySet() /// The returned object must be released after use, by calling the [release] method. jni.JSet entrySet() { - return const jni.JSetType(jni.JObjectType()) - .fromRef(_entrySet(reference.pointer).object); + return _entrySet(reference.pointer) + .object(const jni.JSetType(jni.JObjectType())); } static final _getOrDefault = jniLookup< @@ -3549,9 +3513,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> jni.JObject object, $V object1, ) { - return V.fromRef(_getOrDefault(reference.pointer, object.reference.pointer, + return _getOrDefault(reference.pointer, object.reference.pointer, object1.reference.pointer) - .object); + .object(V); } static final _putIfAbsent = jniLookup< @@ -3570,9 +3534,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, $V object1, ) { - return V.fromRef(_putIfAbsent(reference.pointer, object.reference.pointer, + return _putIfAbsent(reference.pointer, object.reference.pointer, object1.reference.pointer) - .object); + .object(V); } static final _remove1 = jniLookup< @@ -3633,9 +3597,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, $V object1, ) { - return V.fromRef(_replace1(reference.pointer, object.reference.pointer, + return _replace1(reference.pointer, object.reference.pointer, object1.reference.pointer) - .object); + .object(V); } static final _computeIfAbsent = jniLookup< @@ -3654,9 +3618,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, jni.JObject function, ) { - return V.fromRef(_computeIfAbsent(reference.pointer, - object.reference.pointer, function.reference.pointer) - .object); + return _computeIfAbsent(reference.pointer, object.reference.pointer, + function.reference.pointer) + .object(V); } static final _computeIfPresent = jniLookup< @@ -3675,9 +3639,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, jni.JObject biFunction, ) { - return V.fromRef(_computeIfPresent(reference.pointer, - object.reference.pointer, biFunction.reference.pointer) - .object); + return _computeIfPresent(reference.pointer, object.reference.pointer, + biFunction.reference.pointer) + .object(V); } static final _compute = jniLookup< @@ -3696,9 +3660,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $K object, jni.JObject biFunction, ) { - return V.fromRef(_compute(reference.pointer, object.reference.pointer, + return _compute(reference.pointer, object.reference.pointer, biFunction.reference.pointer) - .object); + .object(V); } static final _merge = jniLookup< @@ -3719,9 +3683,9 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> $V object1, jni.JObject biFunction, ) { - return V.fromRef(_merge(reference.pointer, object.reference.pointer, + return _merge(reference.pointer, object.reference.pointer, object1.reference.pointer, biFunction.reference.pointer) - .object); + .object(V); } static final _forEach = jniLookup< @@ -3736,7 +3700,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> void forEach( jni.JObject biConsumer, ) { - return _forEach(reference.pointer, biConsumer.reference.pointer).check(); + _forEach(reference.pointer, biConsumer.reference.pointer).check(); } static final _replaceAll = jniLookup< @@ -3751,7 +3715,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> void replaceAll( jni.JObject biFunction, ) { - return _replaceAll(reference.pointer, biFunction.reference.pointer).check(); + _replaceAll(reference.pointer, biFunction.reference.pointer).check(); } static final _clone = jniLookup< @@ -3762,7 +3726,7 @@ class HashMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public java.lang.Object clone() /// The returned object must be released after use, by calling the [release] method. jni.JObject clone() { - return const jni.JObjectType().fromRef(_clone(reference.pointer).object); + return _clone(reference.pointer).object(const jni.JObjectType()); } } @@ -3780,7 +3744,8 @@ final class $HashMapType<$K extends jni.JObject, $V extends jni.JObject> String get signature => r"Ljava/util/HashMap;"; @override - HashMap<$K, $V> fromRef(jni.JObjectPtr ref) => HashMap.fromRef(K, V, ref); + HashMap<$K, $V> fromReference(jni.JReference reference) => + HashMap.fromReference(K, V, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3805,9 +3770,9 @@ class AndroidUtils extends jni.JObject { @override late final jni.JObjType $type = type; - AndroidUtils.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + AndroidUtils.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $AndroidUtilsType(); @@ -3825,8 +3790,7 @@ class AndroidUtils extends jni.JObject { jni.JObject text, int duration, ) { - return _showToast( - mainActivity.reference.pointer, text.reference.pointer, duration) + _showToast(mainActivity.reference.pointer, text.reference.pointer, duration) .check(); } } @@ -3838,7 +3802,8 @@ final class $AndroidUtilsType extends jni.JObjType { String get signature => r"Lcom/example/in_app_java/AndroidUtils;"; @override - AndroidUtils fromRef(jni.JObjectPtr ref) => AndroidUtils.fromRef(ref); + AndroidUtils fromReference(jni.JReference reference) => + AndroidUtils.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/in_app_java/lib/main.dart b/pkgs/jnigen/example/in_app_java/lib/main.dart index 22575817b0..cf4a0662ff 100644 --- a/pkgs/jnigen/example/in_app_java/lib/main.dart +++ b/pkgs/jnigen/example/in_app_java/lib/main.dart @@ -9,8 +9,8 @@ import 'package:jni/jni.dart'; // structure. import 'android_utils.dart'; -JObject activity = JObject.fromRef(Jni.getCurrentActivity()); -JObject context = JObject.fromRef(Jni.getCachedApplicationContext()); +JObject activity = JObject.fromReference(Jni.getCurrentActivity()); +JObject context = JObject.fromReference(Jni.getCachedApplicationContext()); final hashmap = HashMap.new2(K: JString.type, V: JString.type); diff --git a/pkgs/jnigen/example/in_app_java/pubspec.yaml b/pkgs/jnigen/example/in_app_java/pubspec.yaml index 321cc99bc2..0aa7b29907 100644 --- a/pkgs/jnigen/example/in_app_java/pubspec.yaml +++ b/pkgs/jnigen/example/in_app_java/pubspec.yaml @@ -8,7 +8,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' dependencies: flutter: diff --git a/pkgs/jnigen/example/kotlin_plugin/example/pubspec.yaml b/pkgs/jnigen/example/kotlin_plugin/example/pubspec.yaml index 4c1c796519..2c90cc8fd7 100644 --- a/pkgs/jnigen/example/kotlin_plugin/example/pubspec.yaml +++ b/pkgs/jnigen/example/kotlin_plugin/example/pubspec.yaml @@ -6,7 +6,7 @@ publish_to: "none" version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' dependencies: flutter: diff --git a/pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart b/pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart index 10652ae8a4..8dec075e17 100644 --- a/pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart +++ b/pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart @@ -32,9 +32,9 @@ class Example extends jni.JObject { @override late final jni.JObjType $type = type; - Example.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $ExampleType(); @@ -45,7 +45,7 @@ class Example extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example() { - return Example.fromRef(_new0().object); + return Example.fromReference(_new0().reference); } static final _thinkBeforeAnswering = jniLookup< @@ -60,15 +60,16 @@ class Example extends jni.JObject { /// The returned object must be released after use, by calling the [release] method. Future thinkBeforeAnswering() async { final $p = ReceivePort(); - final $c = - jni.JObject.fromRef(ProtectedJniExtensions.newPortContinuation($p)); - _thinkBeforeAnswering(reference.pointer, $c.reference.pointer).object; - final $o = jni.JObjectPtr.fromAddress(await $p.first); - final $k = const jni.JStringType().getClass().reference.pointer; - if (!jni.Jni.env.IsInstanceOf($o, $k)) { + final $c = jni.JObject.fromReference( + ProtectedJniExtensions.newPortContinuation($p)); + _thinkBeforeAnswering(reference.pointer, $c.reference.pointer) + .object(const jni.JObjectType()); + final $o = jni.JGlobalReference(jni.JObjectPtr.fromAddress(await $p.first)); + final $k = const jni.JStringType().jClass.reference.pointer; + if (!jni.Jni.env.IsInstanceOf($o.pointer, $k)) { throw "Failed"; } - return const jni.JStringType().fromRef($o); + return const jni.JStringType().fromReference($o); } } @@ -79,7 +80,8 @@ final class $ExampleType extends jni.JObjType { String get signature => r"LExample;"; @override - Example fromRef(jni.JObjectPtr ref) => Example.fromRef(ref); + Example fromReference(jni.JReference reference) => + Example.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/kotlin_plugin/pubspec.yaml b/pkgs/jnigen/example/kotlin_plugin/pubspec.yaml index fd89ad6cc5..80b7659819 100644 --- a/pkgs/jnigen/example/kotlin_plugin/pubspec.yaml +++ b/pkgs/jnigen/example/kotlin_plugin/pubspec.yaml @@ -8,7 +8,7 @@ version: 0.0.1 publish_to: none environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' flutter: ">=1.17.0" dependencies: diff --git a/pkgs/jnigen/example/notification_plugin/example/lib/main.dart b/pkgs/jnigen/example/notification_plugin/example/lib/main.dart index c834bcbf25..88bcf81096 100644 --- a/pkgs/jnigen/example/notification_plugin/example/lib/main.dart +++ b/pkgs/jnigen/example/notification_plugin/example/lib/main.dart @@ -10,7 +10,7 @@ import 'package:jni/jni.dart'; // more customization in future. import 'package:notification_plugin/notifications.dart'; -JObject activity = JObject.fromRef(Jni.getCurrentActivity()); +JObject activity = JObject.fromReference(Jni.getCurrentActivity()); int i = 0; diff --git a/pkgs/jnigen/example/notification_plugin/example/pubspec.yaml b/pkgs/jnigen/example/notification_plugin/example/pubspec.yaml index 35f3357f1a..6c980b649a 100644 --- a/pkgs/jnigen/example/notification_plugin/example/pubspec.yaml +++ b/pkgs/jnigen/example/notification_plugin/example/pubspec.yaml @@ -20,7 +20,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' dependencies: flutter: diff --git a/pkgs/jnigen/example/notification_plugin/lib/notifications.dart b/pkgs/jnigen/example/notification_plugin/lib/notifications.dart index 0b5e3137cc..6eb6625862 100644 --- a/pkgs/jnigen/example/notification_plugin/lib/notifications.dart +++ b/pkgs/jnigen/example/notification_plugin/lib/notifications.dart @@ -36,9 +36,9 @@ class Notifications extends jni.JObject { @override late final jni.JObjType $type = type; - Notifications.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Notifications.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $NotificationsType(); @@ -49,7 +49,7 @@ class Notifications extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Notifications() { - return Notifications.fromRef(_new0().object); + return Notifications.fromReference(_new0().reference); } static final _showNotification = jniLookup< @@ -70,7 +70,7 @@ class Notifications extends jni.JObject { jni.JString title, jni.JString text, ) { - return _showNotification(context.reference.pointer, notificationID, + _showNotification(context.reference.pointer, notificationID, title.reference.pointer, text.reference.pointer) .check(); } @@ -83,7 +83,8 @@ final class $NotificationsType extends jni.JObjType { String get signature => r"Lcom/example/notification_plugin/Notifications;"; @override - Notifications fromRef(jni.JObjectPtr ref) => Notifications.fromRef(ref); + Notifications fromReference(jni.JReference reference) => + Notifications.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/notification_plugin/pubspec.yaml b/pkgs/jnigen/example/notification_plugin/pubspec.yaml index 06974b396c..526519f8b8 100644 --- a/pkgs/jnigen/example/notification_plugin/pubspec.yaml +++ b/pkgs/jnigen/example/notification_plugin/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: none homepage: https://github.com/dart-lang/native environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' flutter: ">=2.11.0" dependencies: diff --git a/pkgs/jnigen/example/pdfbox_plugin/dart_example/bin/pdf_info.dart b/pkgs/jnigen/example/pdfbox_plugin/dart_example/bin/pdf_info.dart index 5dfd5851c6..bb6eb5b83b 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/dart_example/bin/pdf_info.dart +++ b/pkgs/jnigen/example/pdfbox_plugin/dart_example/bin/pdf_info.dart @@ -10,8 +10,10 @@ import 'package:jni/jni.dart'; import 'package:pdfbox_plugin/pdfbox_plugin.dart'; void writeInfo(String file) { - final inputFile = Jni.newInstance( - "java/io/FileInputStream", "(Ljava/lang/String;)V", [file]); + final fileInputStreamClass = JClass.forName("java/io/FileInputStream"); + final inputFile = fileInputStreamClass + .constructorId("(Ljava/lang/String;)V") + .call(fileInputStreamClass, JObject.type, [file.toJString()]); final pdDoc = PDDocument.load6(inputFile); int pages = pdDoc.getNumberOfPages(); final info = pdDoc.getDocumentInformation(); diff --git a/pkgs/jnigen/example/pdfbox_plugin/dart_example/pubspec.yaml b/pkgs/jnigen/example/pdfbox_plugin/dart_example/pubspec.yaml index 4af3cf1fd0..2d9c953a54 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/dart_example/pubspec.yaml +++ b/pkgs/jnigen/example/pdfbox_plugin/dart_example/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: none # homepage: https://www.example.com environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' dependencies: path: ^1.8.0 diff --git a/pkgs/jnigen/example/pdfbox_plugin/example/lib/main.dart b/pkgs/jnigen/example/pdfbox_plugin/example/lib/main.dart index 51d0bbb679..80941a8076 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/example/lib/main.dart +++ b/pkgs/jnigen/example/pdfbox_plugin/example/lib/main.dart @@ -167,8 +167,10 @@ class PDFFileInfo { PDFFileInfo.usingPDFBox(this.filename) { // Since java.io is not directly available, use package:jni API to // create a java.io.File object. - final inputFile = - Jni.newInstance("java/io/File", "(Ljava/lang/String;)V", [filename]); + final fileClass = JClass.forName("java/io/File"); + final inputFile = fileClass + .constructorId("(Ljava/lang/String;)V") + .call(fileClass, JObject.type, [filename]); // Static method call PDDocument.load -> PDDocument final pdf = PDDocument.load(inputFile); // Instance method call getNumberOfPages() -> int diff --git a/pkgs/jnigen/example/pdfbox_plugin/example/pubspec.yaml b/pkgs/jnigen/example/pdfbox_plugin/example/pubspec.yaml index 13d0df00f7..8d55d073e7 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/example/pubspec.yaml +++ b/pkgs/jnigen/example/pdfbox_plugin/example/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions diff --git a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart index ca2d148158..177f500250 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart +++ b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart @@ -52,9 +52,9 @@ class PDDocument extends jni.JObject { @override late final jni.JObjType $type = type; - PDDocument.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + PDDocument.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $PDDocumentType(); @@ -68,7 +68,7 @@ class PDDocument extends jni.JObject { /// Creates an empty PDF document. /// You need to add at least one page for the document to be valid. factory PDDocument() { - return PDDocument.fromRef(_new0().object); + return PDDocument.fromReference(_new0().reference); } static final _new1 = jniLookup< @@ -86,7 +86,8 @@ class PDDocument extends jni.JObject { factory PDDocument.new1( jni.JObject memUsageSetting, ) { - return PDDocument.fromRef(_new1(memUsageSetting.reference.pointer).object); + return PDDocument.fromReference( + _new1(memUsageSetting.reference.pointer).reference); } static final _new2 = jniLookup< @@ -103,7 +104,7 @@ class PDDocument extends jni.JObject { factory PDDocument.new2( jni.JObject doc, ) { - return PDDocument.fromRef(_new2(doc.reference.pointer).object); + return PDDocument.fromReference(_new2(doc.reference.pointer).reference); } static final _new3 = jniLookup< @@ -124,8 +125,8 @@ class PDDocument extends jni.JObject { jni.JObject doc, jni.JObject source, ) { - return PDDocument.fromRef( - _new3(doc.reference.pointer, source.reference.pointer).object); + return PDDocument.fromReference( + _new3(doc.reference.pointer, source.reference.pointer).reference); } static final _new4 = jniLookup< @@ -150,9 +151,9 @@ class PDDocument extends jni.JObject { jni.JObject source, jni.JObject permission, ) { - return PDDocument.fromRef(_new4(doc.reference.pointer, + return PDDocument.fromReference(_new4(doc.reference.pointer, source.reference.pointer, permission.reference.pointer) - .object); + .reference); } static final _addPage = jniLookup< @@ -171,7 +172,7 @@ class PDDocument extends jni.JObject { void addPage( jni.JObject page, ) { - return _addPage(reference.pointer, page.reference.pointer).check(); + _addPage(reference.pointer, page.reference.pointer).check(); } static final _addSignature = jniLookup< @@ -197,8 +198,7 @@ class PDDocument extends jni.JObject { void addSignature( jni.JObject sigObject, ) { - return _addSignature(reference.pointer, sigObject.reference.pointer) - .check(); + _addSignature(reference.pointer, sigObject.reference.pointer).check(); } static final _addSignature1 = jniLookup< @@ -228,7 +228,7 @@ class PDDocument extends jni.JObject { jni.JObject sigObject, jni.JObject options, ) { - return _addSignature1(reference.pointer, sigObject.reference.pointer, + _addSignature1(reference.pointer, sigObject.reference.pointer, options.reference.pointer) .check(); } @@ -259,7 +259,7 @@ class PDDocument extends jni.JObject { jni.JObject sigObject, jni.JObject signatureInterface, ) { - return _addSignature2(reference.pointer, sigObject.reference.pointer, + _addSignature2(reference.pointer, sigObject.reference.pointer, signatureInterface.reference.pointer) .check(); } @@ -295,7 +295,7 @@ class PDDocument extends jni.JObject { jni.JObject signatureInterface, jni.JObject options, ) { - return _addSignature3(reference.pointer, sigObject.reference.pointer, + _addSignature3(reference.pointer, sigObject.reference.pointer, signatureInterface.reference.pointer, options.reference.pointer) .check(); } @@ -326,7 +326,7 @@ class PDDocument extends jni.JObject { jni.JObject signatureInterface, jni.JObject options, ) { - return _addSignatureField(reference.pointer, sigFields.reference.pointer, + _addSignatureField(reference.pointer, sigFields.reference.pointer, signatureInterface.reference.pointer, options.reference.pointer) .check(); } @@ -346,7 +346,7 @@ class PDDocument extends jni.JObject { void removePage( jni.JObject page, ) { - return _removePage(reference.pointer, page.reference.pointer).check(); + _removePage(reference.pointer, page.reference.pointer).check(); } static final _removePage1 = jniLookup< @@ -362,7 +362,7 @@ class PDDocument extends jni.JObject { void removePage1( int pageNumber, ) { - return _removePage1(reference.pointer, pageNumber).check(); + _removePage1(reference.pointer, pageNumber).check(); } static final _importPage = jniLookup< @@ -400,8 +400,8 @@ class PDDocument extends jni.JObject { jni.JObject importPage( jni.JObject page, ) { - return const jni.JObjectType() - .fromRef(_importPage(reference.pointer, page.reference.pointer).object); + return _importPage(reference.pointer, page.reference.pointer) + .object(const jni.JObjectType()); } static final _getDocument = jniLookup< @@ -416,8 +416,7 @@ class PDDocument extends jni.JObject { /// This will get the low level document. ///@return The document that this layer sits on top of. jni.JObject getDocument() { - return const jni.JObjectType() - .fromRef(_getDocument(reference.pointer).object); + return _getDocument(reference.pointer).object(const jni.JObjectType()); } static final _getDocumentInformation = jniLookup< @@ -437,8 +436,8 @@ class PDDocument extends jni.JObject { /// PDDocumentCatalog\#getMetadata(). ///@return The documents /Info dictionary, never null. pddocumentinformation_.PDDocumentInformation getDocumentInformation() { - return const pddocumentinformation_.$PDDocumentInformationType() - .fromRef(_getDocumentInformation(reference.pointer).object); + return _getDocumentInformation(reference.pointer) + .object(const pddocumentinformation_.$PDDocumentInformationType()); } static final _setDocumentInformation = jniLookup< @@ -460,8 +459,7 @@ class PDDocument extends jni.JObject { void setDocumentInformation( pddocumentinformation_.PDDocumentInformation info, ) { - return _setDocumentInformation(reference.pointer, info.reference.pointer) - .check(); + _setDocumentInformation(reference.pointer, info.reference.pointer).check(); } static final _getDocumentCatalog = jniLookup< @@ -476,8 +474,8 @@ class PDDocument extends jni.JObject { /// This will get the document CATALOG. This is guaranteed to not return null. ///@return The documents /Root dictionary jni.JObject getDocumentCatalog() { - return const jni.JObjectType() - .fromRef(_getDocumentCatalog(reference.pointer).object); + return _getDocumentCatalog(reference.pointer) + .object(const jni.JObjectType()); } static final _isEncrypted = jniLookup< @@ -509,8 +507,7 @@ class PDDocument extends jni.JObject { /// PDStandardEncryption object. ///@return The encryption dictionary(most likely a PDStandardEncryption object) jni.JObject getEncryption() { - return const jni.JObjectType() - .fromRef(_getEncryption(reference.pointer).object); + return _getEncryption(reference.pointer).object(const jni.JObjectType()); } static final _setEncryptionDictionary = jniLookup< @@ -530,8 +527,7 @@ class PDDocument extends jni.JObject { void setEncryptionDictionary( jni.JObject encryption, ) { - return _setEncryptionDictionary( - reference.pointer, encryption.reference.pointer) + _setEncryptionDictionary(reference.pointer, encryption.reference.pointer) .check(); } @@ -549,8 +545,8 @@ class PDDocument extends jni.JObject { ///@return the last signature as PDSignatureField. ///@throws IOException if no document catalog can be found. jni.JObject getLastSignatureDictionary() { - return const jni.JObjectType() - .fromRef(_getLastSignatureDictionary(reference.pointer).object); + return _getLastSignatureDictionary(reference.pointer) + .object(const jni.JObjectType()); } static final _getSignatureFields = jniLookup< @@ -566,8 +562,8 @@ class PDDocument extends jni.JObject { ///@return a List of PDSignatureFields ///@throws IOException if no document catalog can be found. jni.JList getSignatureFields() { - return const jni.JListType(jni.JObjectType()) - .fromRef(_getSignatureFields(reference.pointer).object); + return _getSignatureFields(reference.pointer) + .object(const jni.JListType(jni.JObjectType())); } static final _getSignatureDictionaries = jniLookup< @@ -583,8 +579,8 @@ class PDDocument extends jni.JObject { ///@return a List of PDSignatureFields ///@throws IOException if no document catalog can be found. jni.JList getSignatureDictionaries() { - return const jni.JListType(jni.JObjectType()) - .fromRef(_getSignatureDictionaries(reference.pointer).object); + return _getSignatureDictionaries(reference.pointer) + .object(const jni.JListType(jni.JObjectType())); } static final _registerTrueTypeFontForClosing = jniLookup< @@ -605,8 +601,7 @@ class PDDocument extends jni.JObject { void registerTrueTypeFontForClosing( jni.JObject ttf, ) { - return _registerTrueTypeFontForClosing( - reference.pointer, ttf.reference.pointer) + _registerTrueTypeFontForClosing(reference.pointer, ttf.reference.pointer) .check(); } @@ -627,8 +622,7 @@ class PDDocument extends jni.JObject { static PDDocument load( jni.JObject file, ) { - return const $PDDocumentType() - .fromRef(_load(file.reference.pointer).object); + return _load(file.reference.pointer).object(const $PDDocumentType()); } static final _load1 = jniLookup< @@ -652,9 +646,8 @@ class PDDocument extends jni.JObject { jni.JObject file, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef( - _load1(file.reference.pointer, memUsageSetting.reference.pointer) - .object); + return _load1(file.reference.pointer, memUsageSetting.reference.pointer) + .object(const $PDDocumentType()); } static final _load2 = jniLookup< @@ -678,8 +671,8 @@ class PDDocument extends jni.JObject { jni.JObject file, jni.JString password, ) { - return const $PDDocumentType().fromRef( - _load2(file.reference.pointer, password.reference.pointer).object); + return _load2(file.reference.pointer, password.reference.pointer) + .object(const $PDDocumentType()); } static final _load3 = jniLookup< @@ -707,9 +700,9 @@ class PDDocument extends jni.JObject { jni.JString password, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef(_load3(file.reference.pointer, - password.reference.pointer, memUsageSetting.reference.pointer) - .object); + return _load3(file.reference.pointer, password.reference.pointer, + memUsageSetting.reference.pointer) + .object(const $PDDocumentType()); } static final _load4 = jniLookup< @@ -739,12 +732,9 @@ class PDDocument extends jni.JObject { jni.JObject keyStore, jni.JString alias, ) { - return const $PDDocumentType().fromRef(_load4( - file.reference.pointer, - password.reference.pointer, - keyStore.reference.pointer, - alias.reference.pointer) - .object); + return _load4(file.reference.pointer, password.reference.pointer, + keyStore.reference.pointer, alias.reference.pointer) + .object(const $PDDocumentType()); } static final _load5 = jniLookup< @@ -781,13 +771,13 @@ class PDDocument extends jni.JObject { jni.JString alias, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef(_load5( + return _load5( file.reference.pointer, password.reference.pointer, keyStore.reference.pointer, alias.reference.pointer, memUsageSetting.reference.pointer) - .object); + .object(const $PDDocumentType()); } static final _load6 = jniLookup< @@ -808,8 +798,7 @@ class PDDocument extends jni.JObject { static PDDocument load6( jni.JObject input, ) { - return const $PDDocumentType() - .fromRef(_load6(input.reference.pointer).object); + return _load6(input.reference.pointer).object(const $PDDocumentType()); } static final _load7 = jniLookup< @@ -834,9 +823,8 @@ class PDDocument extends jni.JObject { jni.JObject input, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef( - _load7(input.reference.pointer, memUsageSetting.reference.pointer) - .object); + return _load7(input.reference.pointer, memUsageSetting.reference.pointer) + .object(const $PDDocumentType()); } static final _load8 = jniLookup< @@ -861,8 +849,8 @@ class PDDocument extends jni.JObject { jni.JObject input, jni.JString password, ) { - return const $PDDocumentType().fromRef( - _load8(input.reference.pointer, password.reference.pointer).object); + return _load8(input.reference.pointer, password.reference.pointer) + .object(const $PDDocumentType()); } static final _load9 = jniLookup< @@ -893,12 +881,9 @@ class PDDocument extends jni.JObject { jni.JObject keyStore, jni.JString alias, ) { - return const $PDDocumentType().fromRef(_load9( - input.reference.pointer, - password.reference.pointer, - keyStore.reference.pointer, - alias.reference.pointer) - .object); + return _load9(input.reference.pointer, password.reference.pointer, + keyStore.reference.pointer, alias.reference.pointer) + .object(const $PDDocumentType()); } static final _load10 = jniLookup< @@ -927,9 +912,9 @@ class PDDocument extends jni.JObject { jni.JString password, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef(_load10(input.reference.pointer, - password.reference.pointer, memUsageSetting.reference.pointer) - .object); + return _load10(input.reference.pointer, password.reference.pointer, + memUsageSetting.reference.pointer) + .object(const $PDDocumentType()); } static final _load11 = jniLookup< @@ -968,13 +953,13 @@ class PDDocument extends jni.JObject { jni.JString alias, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef(_load11( + return _load11( input.reference.pointer, password.reference.pointer, keyStore.reference.pointer, alias.reference.pointer, memUsageSetting.reference.pointer) - .object); + .object(const $PDDocumentType()); } static final _load12 = jniLookup< @@ -994,8 +979,7 @@ class PDDocument extends jni.JObject { static PDDocument load12( jni.JArray input, ) { - return const $PDDocumentType() - .fromRef(_load12(input.reference.pointer).object); + return _load12(input.reference.pointer).object(const $PDDocumentType()); } static final _load13 = jniLookup< @@ -1019,8 +1003,8 @@ class PDDocument extends jni.JObject { jni.JArray input, jni.JString password, ) { - return const $PDDocumentType().fromRef( - _load13(input.reference.pointer, password.reference.pointer).object); + return _load13(input.reference.pointer, password.reference.pointer) + .object(const $PDDocumentType()); } static final _load14 = jniLookup< @@ -1051,12 +1035,9 @@ class PDDocument extends jni.JObject { jni.JObject keyStore, jni.JString alias, ) { - return const $PDDocumentType().fromRef(_load14( - input.reference.pointer, - password.reference.pointer, - keyStore.reference.pointer, - alias.reference.pointer) - .object); + return _load14(input.reference.pointer, password.reference.pointer, + keyStore.reference.pointer, alias.reference.pointer) + .object(const $PDDocumentType()); } static final _load15 = jniLookup< @@ -1094,13 +1075,13 @@ class PDDocument extends jni.JObject { jni.JString alias, jni.JObject memUsageSetting, ) { - return const $PDDocumentType().fromRef(_load15( + return _load15( input.reference.pointer, password.reference.pointer, keyStore.reference.pointer, alias.reference.pointer, memUsageSetting.reference.pointer) - .object); + .object(const $PDDocumentType()); } static final _save = jniLookup< @@ -1123,7 +1104,7 @@ class PDDocument extends jni.JObject { void save( jni.JString fileName, ) { - return _save(reference.pointer, fileName.reference.pointer).check(); + _save(reference.pointer, fileName.reference.pointer).check(); } static final _save1 = jniLookup< @@ -1146,7 +1127,7 @@ class PDDocument extends jni.JObject { void save1( jni.JObject file, ) { - return _save1(reference.pointer, file.reference.pointer).check(); + _save1(reference.pointer, file.reference.pointer).check(); } static final _save2 = jniLookup< @@ -1170,7 +1151,7 @@ class PDDocument extends jni.JObject { void save2( jni.JObject output, ) { - return _save2(reference.pointer, output.reference.pointer).check(); + _save2(reference.pointer, output.reference.pointer).check(); } static final _saveIncremental = jniLookup< @@ -1199,8 +1180,7 @@ class PDDocument extends jni.JObject { void saveIncremental( jni.JObject output, ) { - return _saveIncremental(reference.pointer, output.reference.pointer) - .check(); + _saveIncremental(reference.pointer, output.reference.pointer).check(); } static final _saveIncremental1 = jniLookup< @@ -1237,7 +1217,7 @@ class PDDocument extends jni.JObject { jni.JObject output, jni.JSet objectsToWrite, ) { - return _saveIncremental1(reference.pointer, output.reference.pointer, + _saveIncremental1(reference.pointer, output.reference.pointer, objectsToWrite.reference.pointer) .check(); } @@ -1294,9 +1274,9 @@ class PDDocument extends jni.JObject { jni.JObject saveIncrementalForExternalSigning( jni.JObject output, ) { - return const jni.JObjectType().fromRef(_saveIncrementalForExternalSigning( + return _saveIncrementalForExternalSigning( reference.pointer, output.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _getPage = jniLookup< @@ -1318,8 +1298,8 @@ class PDDocument extends jni.JObject { jni.JObject getPage( int pageIndex, ) { - return const jni.JObjectType() - .fromRef(_getPage(reference.pointer, pageIndex).object); + return _getPage(reference.pointer, pageIndex) + .object(const jni.JObjectType()); } static final _getPages = jniLookup< @@ -1334,7 +1314,7 @@ class PDDocument extends jni.JObject { /// Returns the page tree. ///@return the page tree jni.JObject getPages() { - return const jni.JObjectType().fromRef(_getPages(reference.pointer).object); + return _getPages(reference.pointer).object(const jni.JObjectType()); } static final _getNumberOfPages = jniLookup< @@ -1362,7 +1342,7 @@ class PDDocument extends jni.JObject { /// This will close the underlying COSDocument object. ///@throws IOException If there is an error releasing resources. void close() { - return _close(reference.pointer).check(); + _close(reference.pointer).check(); } static final _protect = jniLookup< @@ -1388,7 +1368,7 @@ class PDDocument extends jni.JObject { void protect( jni.JObject policy, ) { - return _protect(reference.pointer, policy.reference.pointer).check(); + _protect(reference.pointer, policy.reference.pointer).check(); } static final _getCurrentAccessPermission = jniLookup< @@ -1406,8 +1386,8 @@ class PDDocument extends jni.JObject { /// to verify if the current user is allowed to proceed. ///@return the access permissions for the current user on the document. jni.JObject getCurrentAccessPermission() { - return const jni.JObjectType() - .fromRef(_getCurrentAccessPermission(reference.pointer).object); + return _getCurrentAccessPermission(reference.pointer) + .object(const jni.JObjectType()); } static final _isAllSecurityToBeRemoved = jniLookup< @@ -1437,8 +1417,7 @@ class PDDocument extends jni.JObject { void setAllSecurityToBeRemoved( bool removeAllSecurity, ) { - return _setAllSecurityToBeRemoved( - reference.pointer, removeAllSecurity ? 1 : 0) + _setAllSecurityToBeRemoved(reference.pointer, removeAllSecurity ? 1 : 0) .check(); } @@ -1454,8 +1433,7 @@ class PDDocument extends jni.JObject { /// Provides the document ID. ///@return the document ID jni.JLong getDocumentId() { - return const jni.JLongType() - .fromRef(_getDocumentId(reference.pointer).object); + return _getDocumentId(reference.pointer).object(const jni.JLongType()); } static final _setDocumentId = jniLookup< @@ -1473,7 +1451,7 @@ class PDDocument extends jni.JObject { void setDocumentId( jni.JLong docId, ) { - return _setDocumentId(reference.pointer, docId.reference.pointer).check(); + _setDocumentId(reference.pointer, docId.reference.pointer).check(); } static final _getVersion = jniLookup< @@ -1503,7 +1481,7 @@ class PDDocument extends jni.JObject { void setVersion( double newVersion, ) { - return _setVersion(reference.pointer, newVersion).check(); + _setVersion(reference.pointer, newVersion).check(); } static final _getResourceCache = jniLookup< @@ -1518,8 +1496,7 @@ class PDDocument extends jni.JObject { /// Returns the resource cache associated with this document, or null if there is none. ///@return the resource cache or null. jni.JObject getResourceCache() { - return const jni.JObjectType() - .fromRef(_getResourceCache(reference.pointer).object); + return _getResourceCache(reference.pointer).object(const jni.JObjectType()); } static final _setResourceCache = jniLookup< @@ -1537,7 +1514,7 @@ class PDDocument extends jni.JObject { void setResourceCache( jni.JObject resourceCache, ) { - return _setResourceCache(reference.pointer, resourceCache.reference.pointer) + _setResourceCache(reference.pointer, resourceCache.reference.pointer) .check(); } } @@ -1549,7 +1526,8 @@ final class $PDDocumentType extends jni.JObjType { String get signature => r"Lorg/apache/pdfbox/pdmodel/PDDocument;"; @override - PDDocument fromRef(jni.JObjectPtr ref) => PDDocument.fromRef(ref); + PDDocument fromReference(jni.JReference reference) => + PDDocument.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart index 45e477d98d..3cf4bb4a7b 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart +++ b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart @@ -53,9 +53,9 @@ class PDDocumentInformation extends jni.JObject { @override late final jni.JObjType $type = type; - PDDocumentInformation.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + PDDocumentInformation.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $PDDocumentInformationType(); @@ -68,7 +68,7 @@ class PDDocumentInformation extends jni.JObject { /// /// Default Constructor. factory PDDocumentInformation() { - return PDDocumentInformation.fromRef(_new0().object); + return PDDocumentInformation.fromReference(_new0().reference); } static final _new1 = jniLookup< @@ -85,7 +85,8 @@ class PDDocumentInformation extends jni.JObject { factory PDDocumentInformation.new1( jni.JObject dic, ) { - return PDDocumentInformation.fromRef(_new1(dic.reference.pointer).object); + return PDDocumentInformation.fromReference( + _new1(dic.reference.pointer).reference); } static final _getCOSObject = jniLookup< @@ -100,8 +101,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the underlying dictionary that this object wraps. ///@return The underlying info dictionary. jni.JObject getCOSObject() { - return const jni.JObjectType() - .fromRef(_getCOSObject(reference.pointer).object); + return _getCOSObject(reference.pointer).object(const jni.JObjectType()); } static final _getPropertyStringValue = jniLookup< @@ -127,9 +127,9 @@ class PDDocumentInformation extends jni.JObject { jni.JObject getPropertyStringValue( jni.JString propertyKey, ) { - return const jni.JObjectType().fromRef(_getPropertyStringValue( + return _getPropertyStringValue( reference.pointer, propertyKey.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _getTitle = jniLookup< @@ -144,7 +144,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the title of the document. This will return null if no title exists. ///@return The title of the document. jni.JString getTitle() { - return const jni.JStringType().fromRef(_getTitle(reference.pointer).object); + return _getTitle(reference.pointer).object(const jni.JStringType()); } static final _setTitle = jniLookup< @@ -162,7 +162,7 @@ class PDDocumentInformation extends jni.JObject { void setTitle( jni.JString title, ) { - return _setTitle(reference.pointer, title.reference.pointer).check(); + _setTitle(reference.pointer, title.reference.pointer).check(); } static final _getAuthor = jniLookup< @@ -177,8 +177,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the author of the document. This will return null if no author exists. ///@return The author of the document. jni.JString getAuthor() { - return const jni.JStringType() - .fromRef(_getAuthor(reference.pointer).object); + return _getAuthor(reference.pointer).object(const jni.JStringType()); } static final _setAuthor = jniLookup< @@ -196,7 +195,7 @@ class PDDocumentInformation extends jni.JObject { void setAuthor( jni.JString author, ) { - return _setAuthor(reference.pointer, author.reference.pointer).check(); + _setAuthor(reference.pointer, author.reference.pointer).check(); } static final _getSubject = jniLookup< @@ -211,8 +210,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the subject of the document. This will return null if no subject exists. ///@return The subject of the document. jni.JString getSubject() { - return const jni.JStringType() - .fromRef(_getSubject(reference.pointer).object); + return _getSubject(reference.pointer).object(const jni.JStringType()); } static final _setSubject = jniLookup< @@ -230,7 +228,7 @@ class PDDocumentInformation extends jni.JObject { void setSubject( jni.JString subject, ) { - return _setSubject(reference.pointer, subject.reference.pointer).check(); + _setSubject(reference.pointer, subject.reference.pointer).check(); } static final _getKeywords = jniLookup< @@ -245,8 +243,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the keywords of the document. This will return null if no keywords exists. ///@return The keywords of the document. jni.JString getKeywords() { - return const jni.JStringType() - .fromRef(_getKeywords(reference.pointer).object); + return _getKeywords(reference.pointer).object(const jni.JStringType()); } static final _setKeywords = jniLookup< @@ -264,7 +261,7 @@ class PDDocumentInformation extends jni.JObject { void setKeywords( jni.JString keywords, ) { - return _setKeywords(reference.pointer, keywords.reference.pointer).check(); + _setKeywords(reference.pointer, keywords.reference.pointer).check(); } static final _getCreator = jniLookup< @@ -279,8 +276,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the creator of the document. This will return null if no creator exists. ///@return The creator of the document. jni.JString getCreator() { - return const jni.JStringType() - .fromRef(_getCreator(reference.pointer).object); + return _getCreator(reference.pointer).object(const jni.JStringType()); } static final _setCreator = jniLookup< @@ -298,7 +294,7 @@ class PDDocumentInformation extends jni.JObject { void setCreator( jni.JString creator, ) { - return _setCreator(reference.pointer, creator.reference.pointer).check(); + _setCreator(reference.pointer, creator.reference.pointer).check(); } static final _getProducer = jniLookup< @@ -313,8 +309,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the producer of the document. This will return null if no producer exists. ///@return The producer of the document. jni.JString getProducer() { - return const jni.JStringType() - .fromRef(_getProducer(reference.pointer).object); + return _getProducer(reference.pointer).object(const jni.JStringType()); } static final _setProducer = jniLookup< @@ -332,7 +327,7 @@ class PDDocumentInformation extends jni.JObject { void setProducer( jni.JString producer, ) { - return _setProducer(reference.pointer, producer.reference.pointer).check(); + _setProducer(reference.pointer, producer.reference.pointer).check(); } static final _getCreationDate = jniLookup< @@ -347,8 +342,7 @@ class PDDocumentInformation extends jni.JObject { /// This will get the creation date of the document. This will return null if no creation date exists. ///@return The creation date of the document. jni.JObject getCreationDate() { - return const jni.JObjectType() - .fromRef(_getCreationDate(reference.pointer).object); + return _getCreationDate(reference.pointer).object(const jni.JObjectType()); } static final _setCreationDate = jniLookup< @@ -367,7 +361,7 @@ class PDDocumentInformation extends jni.JObject { void setCreationDate( jni.JObject date, ) { - return _setCreationDate(reference.pointer, date.reference.pointer).check(); + _setCreationDate(reference.pointer, date.reference.pointer).check(); } static final _getModificationDate = jniLookup< @@ -382,8 +376,8 @@ class PDDocumentInformation extends jni.JObject { /// This will get the modification date of the document. This will return null if no modification date exists. ///@return The modification date of the document. jni.JObject getModificationDate() { - return const jni.JObjectType() - .fromRef(_getModificationDate(reference.pointer).object); + return _getModificationDate(reference.pointer) + .object(const jni.JObjectType()); } static final _setModificationDate = jniLookup< @@ -402,8 +396,7 @@ class PDDocumentInformation extends jni.JObject { void setModificationDate( jni.JObject date, ) { - return _setModificationDate(reference.pointer, date.reference.pointer) - .check(); + _setModificationDate(reference.pointer, date.reference.pointer).check(); } static final _getTrapped = jniLookup< @@ -419,8 +412,7 @@ class PDDocumentInformation extends jni.JObject { /// This will return null if one is not found. ///@return The trapped value for the document. jni.JString getTrapped() { - return const jni.JStringType() - .fromRef(_getTrapped(reference.pointer).object); + return _getTrapped(reference.pointer).object(const jni.JStringType()); } static final _getMetadataKeys = jniLookup< @@ -436,8 +428,8 @@ class PDDocumentInformation extends jni.JObject { ///@return all metadata key strings. ///@since Apache PDFBox 1.3.0 jni.JSet getMetadataKeys() { - return const jni.JSetType(jni.JStringType()) - .fromRef(_getMetadataKeys(reference.pointer).object); + return _getMetadataKeys(reference.pointer) + .object(const jni.JSetType(jni.JStringType())); } static final _getCustomMetadataValue = jniLookup< @@ -459,9 +451,9 @@ class PDDocumentInformation extends jni.JObject { jni.JString getCustomMetadataValue( jni.JString fieldName, ) { - return const jni.JStringType().fromRef( - _getCustomMetadataValue(reference.pointer, fieldName.reference.pointer) - .object); + return _getCustomMetadataValue( + reference.pointer, fieldName.reference.pointer) + .object(const jni.JStringType()); } static final _setCustomMetadataValue = jniLookup< @@ -482,8 +474,8 @@ class PDDocumentInformation extends jni.JObject { jni.JString fieldName, jni.JString fieldValue, ) { - return _setCustomMetadataValue(reference.pointer, - fieldName.reference.pointer, fieldValue.reference.pointer) + _setCustomMetadataValue(reference.pointer, fieldName.reference.pointer, + fieldValue.reference.pointer) .check(); } @@ -504,7 +496,7 @@ class PDDocumentInformation extends jni.JObject { void setTrapped( jni.JString value, ) { - return _setTrapped(reference.pointer, value.reference.pointer).check(); + _setTrapped(reference.pointer, value.reference.pointer).check(); } } @@ -516,8 +508,8 @@ final class $PDDocumentInformationType String get signature => r"Lorg/apache/pdfbox/pdmodel/PDDocumentInformation;"; @override - PDDocumentInformation fromRef(jni.JObjectPtr ref) => - PDDocumentInformation.fromRef(ref); + PDDocumentInformation fromReference(jni.JReference reference) => + PDDocumentInformation.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart index 1fc593f988..8a6b9704f3 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart +++ b/pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart @@ -56,9 +56,9 @@ class PDFTextStripper extends jni.JObject { @override late final jni.JObjType $type = type; - PDFTextStripper.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + PDFTextStripper.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $PDFTextStripperType(); @@ -76,8 +76,8 @@ class PDFTextStripper extends jni.JObject { /// The returned object must be released after use, by calling the [release] method. /// /// The platform's line separator. - jni.JString get LINE_SEPARATOR => const jni.JStringType() - .fromRef(_get_LINE_SEPARATOR(reference.pointer).object); + jni.JString get LINE_SEPARATOR => + _get_LINE_SEPARATOR(reference.pointer).object(const jni.JStringType()); static final _get_charactersByArticle = jniLookup< ffi.NativeFunction< @@ -112,8 +112,9 @@ class PDFTextStripper extends jni.JObject { /// text after second article /// /// Most PDFs won't have any beads, so charactersByArticle will contain a single entry. - jni.JObject get charactersByArticle => const jni.JObjectType() - .fromRef(_get_charactersByArticle(reference.pointer).object); + jni.JObject get charactersByArticle => + _get_charactersByArticle(reference.pointer) + .object(const jni.JObjectType()); /// from: protected java.util.ArrayList> charactersByArticle /// The returned object must be released after use, by calling the [release] method. @@ -153,8 +154,8 @@ class PDFTextStripper extends jni.JObject { /// from: protected org.apache.pdfbox.pdmodel.PDDocument document /// The returned object must be released after use, by calling the [release] method. - pddocument_.PDDocument get document => const pddocument_.$PDDocumentType() - .fromRef(_get_document(reference.pointer).object); + pddocument_.PDDocument get document => _get_document(reference.pointer) + .object(const pddocument_.$PDDocumentType()); /// from: protected org.apache.pdfbox.pdmodel.PDDocument document /// The returned object must be released after use, by calling the [release] method. @@ -181,7 +182,7 @@ class PDFTextStripper extends jni.JObject { /// from: protected java.io.Writer output /// The returned object must be released after use, by calling the [release] method. jni.JObject get output => - const jni.JObjectType().fromRef(_get_output(reference.pointer).object); + _get_output(reference.pointer).object(const jni.JObjectType()); /// from: protected java.io.Writer output /// The returned object must be released after use, by calling the [release] method. @@ -198,7 +199,7 @@ class PDFTextStripper extends jni.JObject { /// Instantiate a new PDFTextStripper object. ///@throws IOException If there is an error loading the properties. factory PDFTextStripper() { - return PDFTextStripper.fromRef(_new0().object); + return PDFTextStripper.fromReference(_new0().reference); } static final _getText = jniLookup< @@ -225,8 +226,8 @@ class PDFTextStripper extends jni.JObject { jni.JString getText( pddocument_.PDDocument doc, ) { - return const jni.JStringType() - .fromRef(_getText(reference.pointer, doc.reference.pointer).object); + return _getText(reference.pointer, doc.reference.pointer) + .object(const jni.JStringType()); } static final _writeText = jniLookup< @@ -249,7 +250,7 @@ class PDFTextStripper extends jni.JObject { pddocument_.PDDocument doc, jni.JObject outputStream, ) { - return _writeText(reference.pointer, doc.reference.pointer, + _writeText(reference.pointer, doc.reference.pointer, outputStream.reference.pointer) .check(); } @@ -270,7 +271,7 @@ class PDFTextStripper extends jni.JObject { void processPages( jni.JObject pages, ) { - return _processPages(reference.pointer, pages.reference.pointer).check(); + _processPages(reference.pointer, pages.reference.pointer).check(); } static final _startDocument = jniLookup< @@ -289,8 +290,7 @@ class PDFTextStripper extends jni.JObject { void startDocument( pddocument_.PDDocument document, ) { - return _startDocument(reference.pointer, document.reference.pointer) - .check(); + _startDocument(reference.pointer, document.reference.pointer).check(); } static final _endDocument = jniLookup< @@ -310,7 +310,7 @@ class PDFTextStripper extends jni.JObject { void endDocument( pddocument_.PDDocument document, ) { - return _endDocument(reference.pointer, document.reference.pointer).check(); + _endDocument(reference.pointer, document.reference.pointer).check(); } static final _processPage = jniLookup< @@ -329,7 +329,7 @@ class PDFTextStripper extends jni.JObject { void processPage( jni.JObject page, ) { - return _processPage(reference.pointer, page.reference.pointer).check(); + _processPage(reference.pointer, page.reference.pointer).check(); } static final _startArticle = jniLookup< @@ -345,7 +345,7 @@ class PDFTextStripper extends jni.JObject { /// may provide additional information. ///@throws IOException If there is any error writing to the stream. void startArticle() { - return _startArticle(reference.pointer).check(); + _startArticle(reference.pointer).check(); } static final _startArticle1 = jniLookup< @@ -363,7 +363,7 @@ class PDFTextStripper extends jni.JObject { void startArticle1( bool isLTR, ) { - return _startArticle1(reference.pointer, isLTR ? 1 : 0).check(); + _startArticle1(reference.pointer, isLTR ? 1 : 0).check(); } static final _endArticle = jniLookup< @@ -377,7 +377,7 @@ class PDFTextStripper extends jni.JObject { /// End an article. Default implementation is to do nothing. Subclasses may provide additional information. ///@throws IOException If there is any error writing to the stream. void endArticle() { - return _endArticle(reference.pointer).check(); + _endArticle(reference.pointer).check(); } static final _startPage = jniLookup< @@ -396,7 +396,7 @@ class PDFTextStripper extends jni.JObject { void startPage( jni.JObject page, ) { - return _startPage(reference.pointer, page.reference.pointer).check(); + _startPage(reference.pointer, page.reference.pointer).check(); } static final _endPage = jniLookup< @@ -415,7 +415,7 @@ class PDFTextStripper extends jni.JObject { void endPage( jni.JObject page, ) { - return _endPage(reference.pointer, page.reference.pointer).check(); + _endPage(reference.pointer, page.reference.pointer).check(); } static final _writePage = jniLookup< @@ -431,7 +431,7 @@ class PDFTextStripper extends jni.JObject { /// enabled. ///@throws IOException If there is an error writing the text. void writePage() { - return _writePage(reference.pointer).check(); + _writePage(reference.pointer).check(); } static final _writeLineSeparator = jniLookup< @@ -445,7 +445,7 @@ class PDFTextStripper extends jni.JObject { /// Write the line separator value to the output stream. ///@throws IOException If there is a problem writing out the line separator to the document. void writeLineSeparator() { - return _writeLineSeparator(reference.pointer).check(); + _writeLineSeparator(reference.pointer).check(); } static final _writeWordSeparator = jniLookup< @@ -459,7 +459,7 @@ class PDFTextStripper extends jni.JObject { /// Write the word separator value to the output stream. ///@throws IOException If there is a problem writing out the word separator to the document. void writeWordSeparator() { - return _writeWordSeparator(reference.pointer).check(); + _writeWordSeparator(reference.pointer).check(); } static final _writeCharacters = jniLookup< @@ -478,7 +478,7 @@ class PDFTextStripper extends jni.JObject { void writeCharacters( jni.JObject text, ) { - return _writeCharacters(reference.pointer, text.reference.pointer).check(); + _writeCharacters(reference.pointer, text.reference.pointer).check(); } static final _writeString = jniLookup< @@ -502,7 +502,7 @@ class PDFTextStripper extends jni.JObject { jni.JString text, jni.JList textPositions, ) { - return _writeString(reference.pointer, text.reference.pointer, + _writeString(reference.pointer, text.reference.pointer, textPositions.reference.pointer) .check(); } @@ -523,7 +523,7 @@ class PDFTextStripper extends jni.JObject { void writeString1( jni.JString text, ) { - return _writeString1(reference.pointer, text.reference.pointer).check(); + _writeString1(reference.pointer, text.reference.pointer).check(); } static final _processTextPosition = jniLookup< @@ -543,8 +543,7 @@ class PDFTextStripper extends jni.JObject { void processTextPosition( jni.JObject text, ) { - return _processTextPosition(reference.pointer, text.reference.pointer) - .check(); + _processTextPosition(reference.pointer, text.reference.pointer).check(); } static final _getStartPage = jniLookup< @@ -576,7 +575,7 @@ class PDFTextStripper extends jni.JObject { void setStartPage( int startPageValue, ) { - return _setStartPage(reference.pointer, startPageValue).check(); + _setStartPage(reference.pointer, startPageValue).check(); } static final _getEndPage = jniLookup< @@ -608,7 +607,7 @@ class PDFTextStripper extends jni.JObject { void setEndPage( int endPageValue, ) { - return _setEndPage(reference.pointer, endPageValue).check(); + _setEndPage(reference.pointer, endPageValue).check(); } static final _setLineSeparator = jniLookup< @@ -627,8 +626,7 @@ class PDFTextStripper extends jni.JObject { void setLineSeparator( jni.JString separator, ) { - return _setLineSeparator(reference.pointer, separator.reference.pointer) - .check(); + _setLineSeparator(reference.pointer, separator.reference.pointer).check(); } static final _getLineSeparator = jniLookup< @@ -643,8 +641,7 @@ class PDFTextStripper extends jni.JObject { /// This will get the line separator. ///@return The desired line separator string. jni.JString getLineSeparator() { - return const jni.JStringType() - .fromRef(_getLineSeparator(reference.pointer).object); + return _getLineSeparator(reference.pointer).object(const jni.JStringType()); } static final _getWordSeparator = jniLookup< @@ -659,8 +656,7 @@ class PDFTextStripper extends jni.JObject { /// This will get the word separator. ///@return The desired word separator string. jni.JString getWordSeparator() { - return const jni.JStringType() - .fromRef(_getWordSeparator(reference.pointer).object); + return _getWordSeparator(reference.pointer).object(const jni.JStringType()); } static final _setWordSeparator = jniLookup< @@ -681,8 +677,7 @@ class PDFTextStripper extends jni.JObject { void setWordSeparator( jni.JString separator, ) { - return _setWordSeparator(reference.pointer, separator.reference.pointer) - .check(); + _setWordSeparator(reference.pointer, separator.reference.pointer).check(); } static final _getSuppressDuplicateOverlappingText = jniLookup< @@ -724,8 +719,7 @@ class PDFTextStripper extends jni.JObject { /// The output stream that is being written to. ///@return The stream that output is being written to. jni.JObject getOutput() { - return const jni.JObjectType() - .fromRef(_getOutput(reference.pointer).object); + return _getOutput(reference.pointer).object(const jni.JObjectType()); } static final _getCharactersByArticle = jniLookup< @@ -741,8 +735,8 @@ class PDFTextStripper extends jni.JObject { /// returns a List that contains List objects, the inner lists will contain TextPosition objects. ///@return A double List of TextPositions for all text strings on the page. jni.JList> getCharactersByArticle() { - return const jni.JListType(jni.JListType(jni.JObjectType())) - .fromRef(_getCharactersByArticle(reference.pointer).object); + return _getCharactersByArticle(reference.pointer) + .object(const jni.JListType(jni.JListType(jni.JObjectType()))); } static final _setSuppressDuplicateOverlappingText = jniLookup< @@ -760,7 +754,7 @@ class PDFTextStripper extends jni.JObject { void setSuppressDuplicateOverlappingText( bool suppressDuplicateOverlappingTextValue, ) { - return _setSuppressDuplicateOverlappingText( + _setSuppressDuplicateOverlappingText( reference.pointer, suppressDuplicateOverlappingTextValue ? 1 : 0) .check(); } @@ -792,8 +786,7 @@ class PDFTextStripper extends jni.JObject { void setShouldSeparateByBeads( bool aShouldSeparateByBeads, ) { - return _setShouldSeparateByBeads( - reference.pointer, aShouldSeparateByBeads ? 1 : 0) + _setShouldSeparateByBeads(reference.pointer, aShouldSeparateByBeads ? 1 : 0) .check(); } @@ -809,8 +802,7 @@ class PDFTextStripper extends jni.JObject { /// Get the bookmark where text extraction should end, inclusive. Default is null. ///@return The ending bookmark. jni.JObject getEndBookmark() { - return const jni.JObjectType() - .fromRef(_getEndBookmark(reference.pointer).object); + return _getEndBookmark(reference.pointer).object(const jni.JObjectType()); } static final _setEndBookmark = jniLookup< @@ -828,8 +820,7 @@ class PDFTextStripper extends jni.JObject { void setEndBookmark( jni.JObject aEndBookmark, ) { - return _setEndBookmark(reference.pointer, aEndBookmark.reference.pointer) - .check(); + _setEndBookmark(reference.pointer, aEndBookmark.reference.pointer).check(); } static final _getStartBookmark = jniLookup< @@ -844,8 +835,7 @@ class PDFTextStripper extends jni.JObject { /// Get the bookmark where text extraction should start, inclusive. Default is null. ///@return The starting bookmark. jni.JObject getStartBookmark() { - return const jni.JObjectType() - .fromRef(_getStartBookmark(reference.pointer).object); + return _getStartBookmark(reference.pointer).object(const jni.JObjectType()); } static final _setStartBookmark = jniLookup< @@ -863,8 +853,7 @@ class PDFTextStripper extends jni.JObject { void setStartBookmark( jni.JObject aStartBookmark, ) { - return _setStartBookmark( - reference.pointer, aStartBookmark.reference.pointer) + _setStartBookmark(reference.pointer, aStartBookmark.reference.pointer) .check(); } @@ -895,8 +884,7 @@ class PDFTextStripper extends jni.JObject { void setAddMoreFormatting( bool newAddMoreFormatting, ) { - return _setAddMoreFormatting( - reference.pointer, newAddMoreFormatting ? 1 : 0) + _setAddMoreFormatting(reference.pointer, newAddMoreFormatting ? 1 : 0) .check(); } @@ -933,8 +921,7 @@ class PDFTextStripper extends jni.JObject { void setSortByPosition( bool newSortByPosition, ) { - return _setSortByPosition(reference.pointer, newSortByPosition ? 1 : 0) - .check(); + _setSortByPosition(reference.pointer, newSortByPosition ? 1 : 0).check(); } static final _getSpacingTolerance = jniLookup< @@ -967,8 +954,7 @@ class PDFTextStripper extends jni.JObject { void setSpacingTolerance( double spacingToleranceValue, ) { - return _setSpacingTolerance(reference.pointer, spacingToleranceValue) - .check(); + _setSpacingTolerance(reference.pointer, spacingToleranceValue).check(); } static final _getAverageCharTolerance = jniLookup< @@ -1001,8 +987,7 @@ class PDFTextStripper extends jni.JObject { void setAverageCharTolerance( double averageCharToleranceValue, ) { - return _setAverageCharTolerance( - reference.pointer, averageCharToleranceValue) + _setAverageCharTolerance(reference.pointer, averageCharToleranceValue) .check(); } @@ -1036,7 +1021,7 @@ class PDFTextStripper extends jni.JObject { void setIndentThreshold( double indentThresholdValue, ) { - return _setIndentThreshold(reference.pointer, indentThresholdValue).check(); + _setIndentThreshold(reference.pointer, indentThresholdValue).check(); } static final _getDropThreshold = jniLookup< @@ -1069,7 +1054,7 @@ class PDFTextStripper extends jni.JObject { void setDropThreshold( double dropThresholdValue, ) { - return _setDropThreshold(reference.pointer, dropThresholdValue).check(); + _setDropThreshold(reference.pointer, dropThresholdValue).check(); } static final _getParagraphStart = jniLookup< @@ -1084,8 +1069,8 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the beginning of a paragraph. ///@return the paragraph start string jni.JString getParagraphStart() { - return const jni.JStringType() - .fromRef(_getParagraphStart(reference.pointer).object); + return _getParagraphStart(reference.pointer) + .object(const jni.JStringType()); } static final _setParagraphStart = jniLookup< @@ -1103,7 +1088,7 @@ class PDFTextStripper extends jni.JObject { void setParagraphStart( jni.JString s, ) { - return _setParagraphStart(reference.pointer, s.reference.pointer).check(); + _setParagraphStart(reference.pointer, s.reference.pointer).check(); } static final _getParagraphEnd = jniLookup< @@ -1118,8 +1103,7 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the end of a paragraph. ///@return the paragraph end string jni.JString getParagraphEnd() { - return const jni.JStringType() - .fromRef(_getParagraphEnd(reference.pointer).object); + return _getParagraphEnd(reference.pointer).object(const jni.JStringType()); } static final _setParagraphEnd = jniLookup< @@ -1137,7 +1121,7 @@ class PDFTextStripper extends jni.JObject { void setParagraphEnd( jni.JString s, ) { - return _setParagraphEnd(reference.pointer, s.reference.pointer).check(); + _setParagraphEnd(reference.pointer, s.reference.pointer).check(); } static final _getPageStart = jniLookup< @@ -1152,8 +1136,7 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the beginning of a page. ///@return the page start string jni.JString getPageStart() { - return const jni.JStringType() - .fromRef(_getPageStart(reference.pointer).object); + return _getPageStart(reference.pointer).object(const jni.JStringType()); } static final _setPageStart = jniLookup< @@ -1171,8 +1154,7 @@ class PDFTextStripper extends jni.JObject { void setPageStart( jni.JString pageStartValue, ) { - return _setPageStart(reference.pointer, pageStartValue.reference.pointer) - .check(); + _setPageStart(reference.pointer, pageStartValue.reference.pointer).check(); } static final _getPageEnd = jniLookup< @@ -1187,8 +1169,7 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the end of a page. ///@return the page end string jni.JString getPageEnd() { - return const jni.JStringType() - .fromRef(_getPageEnd(reference.pointer).object); + return _getPageEnd(reference.pointer).object(const jni.JStringType()); } static final _setPageEnd = jniLookup< @@ -1206,8 +1187,7 @@ class PDFTextStripper extends jni.JObject { void setPageEnd( jni.JString pageEndValue, ) { - return _setPageEnd(reference.pointer, pageEndValue.reference.pointer) - .check(); + _setPageEnd(reference.pointer, pageEndValue.reference.pointer).check(); } static final _getArticleStart = jniLookup< @@ -1222,8 +1202,7 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the beginning of an article. ///@return the article start string jni.JString getArticleStart() { - return const jni.JStringType() - .fromRef(_getArticleStart(reference.pointer).object); + return _getArticleStart(reference.pointer).object(const jni.JStringType()); } static final _setArticleStart = jniLookup< @@ -1241,8 +1220,7 @@ class PDFTextStripper extends jni.JObject { void setArticleStart( jni.JString articleStartValue, ) { - return _setArticleStart( - reference.pointer, articleStartValue.reference.pointer) + _setArticleStart(reference.pointer, articleStartValue.reference.pointer) .check(); } @@ -1258,8 +1236,7 @@ class PDFTextStripper extends jni.JObject { /// Returns the string which will be used at the end of an article. ///@return the article end string jni.JString getArticleEnd() { - return const jni.JStringType() - .fromRef(_getArticleEnd(reference.pointer).object); + return _getArticleEnd(reference.pointer).object(const jni.JStringType()); } static final _setArticleEnd = jniLookup< @@ -1277,7 +1254,7 @@ class PDFTextStripper extends jni.JObject { void setArticleEnd( jni.JString articleEndValue, ) { - return _setArticleEnd(reference.pointer, articleEndValue.reference.pointer) + _setArticleEnd(reference.pointer, articleEndValue.reference.pointer) .check(); } @@ -1292,7 +1269,7 @@ class PDFTextStripper extends jni.JObject { /// writes the paragraph separator string to the output. ///@throws IOException if something went wrong void writeParagraphSeparator() { - return _writeParagraphSeparator(reference.pointer).check(); + _writeParagraphSeparator(reference.pointer).check(); } static final _writeParagraphStart = jniLookup< @@ -1306,7 +1283,7 @@ class PDFTextStripper extends jni.JObject { /// Write something (if defined) at the start of a paragraph. ///@throws IOException if something went wrong void writeParagraphStart() { - return _writeParagraphStart(reference.pointer).check(); + _writeParagraphStart(reference.pointer).check(); } static final _writeParagraphEnd = jniLookup< @@ -1320,7 +1297,7 @@ class PDFTextStripper extends jni.JObject { /// Write something (if defined) at the end of a paragraph. ///@throws IOException if something went wrong void writeParagraphEnd() { - return _writeParagraphEnd(reference.pointer).check(); + _writeParagraphEnd(reference.pointer).check(); } static final _writePageStart = jniLookup< @@ -1334,7 +1311,7 @@ class PDFTextStripper extends jni.JObject { /// Write something (if defined) at the start of a page. ///@throws IOException if something went wrong void writePageStart() { - return _writePageStart(reference.pointer).check(); + _writePageStart(reference.pointer).check(); } static final _writePageEnd = jniLookup< @@ -1348,7 +1325,7 @@ class PDFTextStripper extends jni.JObject { /// Write something (if defined) at the end of a page. ///@throws IOException if something went wrong void writePageEnd() { - return _writePageEnd(reference.pointer).check(); + _writePageEnd(reference.pointer).check(); } static final _setListItemPatterns = jniLookup< @@ -1367,8 +1344,7 @@ class PDFTextStripper extends jni.JObject { void setListItemPatterns( jni.JList patterns, ) { - return _setListItemPatterns(reference.pointer, patterns.reference.pointer) - .check(); + _setListItemPatterns(reference.pointer, patterns.reference.pointer).check(); } static final _getListItemPatterns = jniLookup< @@ -1397,8 +1373,8 @@ class PDFTextStripper extends jni.JObject { /// This method returns a list of such regular expression Patterns. ///@return a list of Pattern objects. jni.JList getListItemPatterns() { - return const jni.JListType(jni.JObjectType()) - .fromRef(_getListItemPatterns(reference.pointer).object); + return _getListItemPatterns(reference.pointer) + .object(const jni.JListType(jni.JObjectType())); } static final _matchPattern = jniLookup< @@ -1426,9 +1402,8 @@ class PDFTextStripper extends jni.JObject { jni.JString string, jni.JList patterns, ) { - return const jni.JObjectType().fromRef( - _matchPattern(string.reference.pointer, patterns.reference.pointer) - .object); + return _matchPattern(string.reference.pointer, patterns.reference.pointer) + .object(const jni.JObjectType()); } } @@ -1439,7 +1414,8 @@ final class $PDFTextStripperType extends jni.JObjType { String get signature => r"Lorg/apache/pdfbox/text/PDFTextStripper;"; @override - PDFTextStripper fromRef(jni.JObjectPtr ref) => PDFTextStripper.fromRef(ref); + PDFTextStripper fromReference(jni.JReference reference) => + PDFTextStripper.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/example/pdfbox_plugin/pubspec.yaml b/pkgs/jnigen/example/pdfbox_plugin/pubspec.yaml index 39b8284484..2c719c9ca0 100644 --- a/pkgs/jnigen/example/pdfbox_plugin/pubspec.yaml +++ b/pkgs/jnigen/example/pdfbox_plugin/pubspec.yaml @@ -6,7 +6,7 @@ publish_to: none homepage: https://github.com/dart-lang/native environment: - sdk: '>=3.1.0 <4.0.0' + sdk: '>=3.3.0 <4.0.0' #flutter: ">=2.11.0" dependencies: diff --git a/pkgs/jnigen/lib/src/bindings/dart_generator.dart b/pkgs/jnigen/lib/src/bindings/dart_generator.dart index 843f684a00..86ec714f31 100644 --- a/pkgs/jnigen/lib/src/bindings/dart_generator.dart +++ b/pkgs/jnigen/lib/src/bindings/dart_generator.dart @@ -22,10 +22,11 @@ const _ffi = 'ffi'; // package:jni types. const _jType = '$_jni.JObjType'; const _jPointer = '$_jni.JObjectPtr'; +const _jReference = '$_jni.JReference'; +const _jGlobalReference = '$_jni.JGlobalReference'; const _jArray = '$_jni.JArray'; const _jObject = '$_jni.JObject'; const _jResult = '$_jni.JniResult'; -const _jCallType = '$_jni.JniCallType'; // package:ffi types. const _voidPointer = '$_ffi.Pointer<$_ffi.Void>'; @@ -35,12 +36,15 @@ const _typeParamPrefix = '\$'; // Misc. const _protectedExtension = 'ProtectedJniExtensions'; -const _classRef = '_class.reference.pointer'; -const _env = '$_jni.Jni.env'; -const _accessors = '$_jni.Jni.accessors'; +const _classRef = '_class'; const _lookup = 'jniLookup'; + +/// Used for C bindings. const _selfPointer = 'reference.pointer'; +/// Used for Dart-only bindings. +const _self = 'this'; + // Docs. const _releaseInstruction = ' /// The returned object must be released after use, ' @@ -354,12 +358,12 @@ class $name$typeParamsDef extends $superName { $typeClassesDef - $name.fromRef( + $name.fromReference( $ctorTypeClassesDef - $_jPointer ref, - ): super.fromRef( + $_jReference reference, + ): super.fromReference( $superTypeClassesCall - ref + reference ); '''); @@ -367,7 +371,7 @@ class $name$typeParamsDef extends $superName { if (isDartOnly) { final internalName = node.internalName; s.write(''' - static final _class = $_jni.Jni.findJClass(r"$internalName"); + static final $_classRef = $_jni.JClass.forName(r"$internalName"); '''); } @@ -467,7 +471,7 @@ class $name$typeParamsDef extends $superName { .join(_newLine(depth: 3)); s.write(''' final \$p = ReceivePort(); - final \$x = $name.fromRef( + final \$x = $name.fromReference( $typeClassesCall $_protectedExtension.newPortProxy( r"${node.binaryName}", @@ -601,9 +605,9 @@ final class $typeClassName$typeParamsDef extends $_jType<$name$typeParamsCall> { String get signature => r"$signature"; @override - $name$typeParamsCall fromRef($_jPointer ref) => $name.fromRef( + $name$typeParamsCall fromReference($_jReference reference) => $name.fromReference( $typeClassesCall - ref + reference ); @override @@ -866,7 +870,9 @@ class _TypeParamGenerator extends Visitor { } class _JniResultGetter extends TypeVisitor { - const _JniResultGetter(); + final Resolver resolver; + + _JniResultGetter(this.resolver); @override String visitPrimitiveType(PrimitiveType node) { @@ -878,7 +884,8 @@ class _JniResultGetter extends TypeVisitor { @override String visitNonPrimitiveType(ReferredType node) { - return 'object'; + final type = node.accept(_TypeClassGenerator(resolver)).name; + return 'object($type)'; } } @@ -911,34 +918,6 @@ class _TypeSig extends TypeVisitor { } } -class _TypeName extends TypeVisitor { - const _TypeName(); - - @override - String visitPrimitiveType(PrimitiveType node) { - return node.name; - } - - @override - String visitNonPrimitiveType(ReferredType node) { - return 'object'; - } -} - -class _CallType extends TypeVisitor { - const _CallType(); - - @override - String visitPrimitiveType(PrimitiveType node) { - return '$_jCallType.${node.name}Type'; - } - - @override - String visitNonPrimitiveType(ReferredType node) { - return '$_jCallType.objectType'; - } -} - class _ToNativeSuffix extends TypeVisitor { const _ToNativeSuffix(); @@ -956,24 +935,6 @@ class _ToNativeSuffix extends TypeVisitor { } } -class _FromNative extends TypeVisitor { - final Resolver resolver; - final String value; - - const _FromNative(this.resolver, this.value); - - @override - String visitPrimitiveType(PrimitiveType node) { - return value; - } - - @override - String visitNonPrimitiveType(ReferredType node) { - final typeClass = node.accept(_TypeClassGenerator(resolver)).name; - return '$typeClass.fromRef($value)'; - } -} - class _FieldGenerator extends Visitor { final Config config; final Resolver resolver; @@ -1009,7 +970,7 @@ class _FieldGenerator extends Visitor { String cGetter(Field node) { final name = node.finalName; - final getter = node.type.accept(const _JniResultGetter()); + final getter = node.type.accept(_JniResultGetter(resolver)); final self = node.isStatic ? '' : _selfPointer; return '_get_$name($self).$getter'; } @@ -1023,12 +984,11 @@ class _FieldGenerator extends Visitor { void writeDartOnlyAccessor(Field node) { final name = node.finalName; - final ifStatic = node.isStatic ? 'Static' : ''; + final staticOrInstance = node.isStatic ? 'static' : 'instance'; final descriptor = node.type.descriptor; s.write(''' - static final _id_$name = - $_accessors.get${ifStatic}FieldIDOf( - $_classRef, + static final _id_$name = + $_classRef.${staticOrInstance}FieldId( r"${node.name}", r"$descriptor", ); @@ -1037,21 +997,16 @@ class _FieldGenerator extends Visitor { String dartOnlyGetter(Field node) { final name = node.finalName; - final self = node.isStatic ? _classRef : _selfPointer; - final ifStatic = node.isStatic ? 'Static' : ''; - final callType = node.type.accept(const _CallType()); - final resultGetter = node.type.accept(const _JniResultGetter()); - return '$_accessors.get${ifStatic}Field($self, _id_$name, $callType)' - '.$resultGetter'; + final self = node.isStatic ? _classRef : _self; + final type = node.type.accept(_TypeClassGenerator(resolver)).name; + return '_id_$name.get($self, $type)'; } String dartOnlySetter(Field node) { final name = node.finalName; - final self = node.isStatic ? _classRef : _selfPointer; - final ifStatic = node.isStatic ? 'Static' : ''; - final fieldType = node.type.accept(const _TypeName()).capitalize(); - final toNativeSuffix = node.type.accept(const _ToNativeSuffix()); - return '$_env.Set$ifStatic${fieldType}Field($self, _id_$name, value$toNativeSuffix)'; + final self = node.isStatic ? _classRef : _self; + final type = node.type.accept(_TypeClassGenerator(resolver)).name; + return '_id_$name.set($self, $type, value)'; } void writeDocs(Field node, {required bool writeReleaseInstructions}) { @@ -1088,9 +1043,7 @@ class _FieldGenerator extends Visitor { final ifStatic = node.isStatic ? 'static ' : ''; final type = node.type.accept(_TypeGenerator(resolver)); s.write('$ifStatic$type get $name => '); - s.write(node.type.accept( - _FromNative(resolver, (isCBased ? cGetter : dartOnlyGetter)(node)), - )); + s.write((isCBased ? cGetter : dartOnlyGetter)(node)); s.writeln(';\n'); if (!node.isFinal) { // Setter docs. @@ -1143,12 +1096,19 @@ class _MethodGenerator extends Visitor { void writeDartOnlyAccessor(Method node) { final name = node.finalName; - final ifStatic = node.isStatic ? 'Static' : ''; + final kind = node.isCtor + ? 'constructor' + : node.isStatic + ? 'staticMethod' + : 'instanceMethod'; final descriptor = node.descriptor; s.write(''' - static final _id_$name = $_accessors.get${ifStatic}MethodIDOf( - $_classRef, r"${node.name}", r"$descriptor"); - + static final _id_$name = $_classRef.${kind}Id( +'''); + if (!node.isCtor) s.writeln(' r"${node.name}",'); + s.write(''' + r"$descriptor", + ); '''); } @@ -1160,14 +1120,14 @@ class _MethodGenerator extends Visitor { final name = node.finalName; final params = node.params.accept(const _ParamCall(isCBased: true)).join(', '); - return '_$name($params)'; + return '_$name($params).reference'; } String dartOnlyCtor(Method node) { final name = node.finalName; final params = node.params.accept(const _ParamCall(isCBased: false)).join(', '); - return '$_accessors.newObjectWithArgs($_classRef, _id_$name, [$params])'; + return '_id_$name($_classRef, referenceType, [$params])'; } String cMethodCall(Method node) { @@ -1176,20 +1136,17 @@ class _MethodGenerator extends Visitor { if (!node.isStatic) _selfPointer, ...node.params.accept(const _ParamCall(isCBased: true)), ].join(', '); - final resultGetter = node.returnType.accept(const _JniResultGetter()); + final resultGetter = node.returnType.accept(_JniResultGetter(resolver)); return '_$name($params).$resultGetter'; } String dartOnlyMethodCall(Method node) { final name = node.finalName; - final ifStatic = node.isStatic ? 'Static' : ''; - final self = node.isStatic ? _classRef : _selfPointer; - final callType = node.returnType.accept(const _CallType()); + final self = node.isStatic ? _classRef : _self; final params = node.params.accept(const _ParamCall(isCBased: false)).join(', '); - final resultGetter = node.returnType.accept(const _JniResultGetter()); - return '$_accessors.call${ifStatic}MethodWithArgs' - '($self, _id_$name, $callType, [$params]).$resultGetter'; + final type = node.returnType.accept(_TypeClassGenerator(resolver)).name; + return '_id_$name($self, $type, [$params])'; } @override @@ -1257,9 +1214,9 @@ class _MethodGenerator extends Visitor { s.write(''' factory $ctorName($paramsDef$typeClassDef) { $typeInference - return ${node.classDecl.finalName}.fromRef( + return ${node.classDecl.finalName}.fromReference( $typeClassCall - $ctorExpr.object + $ctorExpr ); } @@ -1299,27 +1256,27 @@ class _MethodGenerator extends Visitor { s.write(' $ifStatic$returnType $name$typeParamsDef($params$typeClassDef)'); final callExpr = (isCBased ? cMethodCall : dartOnlyMethodCall)(node); if (isSuspendFun(node)) { - final returning = - node.asyncReturnType!.accept(_FromNative(resolver, '\$o')); + final returningType = + node.asyncReturnType!.accept(_TypeClassGenerator(resolver)).name; s.write('''async { $typeInference final \$p = ReceivePort(); - final \$c = $_jObject.fromRef($_protectedExtension.newPortContinuation(\$p)); + final \$c = $_jObject.fromReference($_protectedExtension.newPortContinuation(\$p)); $callExpr; - final \$o = $_jPointer.fromAddress(await \$p.first); - final \$k = $returnTypeClass.getClass().reference.pointer; - if (!$_jni.Jni.env.IsInstanceOf(\$o, \$k)) { + final \$o = $_jGlobalReference($_jPointer.fromAddress(await \$p.first)); + final \$k = $returnTypeClass.jClass.reference.pointer; + if (!$_jni.Jni.env.IsInstanceOf(\$o.pointer, \$k)) { throw "Failed"; } - return $returning; + return $returningType.fromReference(\$o); } '''); } else { - final returning = node.returnType.accept(_FromNative(resolver, callExpr)); + final returning = returnType == 'void' ? callExpr : 'return $callExpr'; s.writeln('''{ $typeInference - return $returning; + $returning; } '''); } diff --git a/pkgs/jnigen/lib/src/bindings/renamer.dart b/pkgs/jnigen/lib/src/bindings/renamer.dart index 56fea0aedc..ec6425a7c2 100644 --- a/pkgs/jnigen/lib/src/bindings/renamer.dart +++ b/pkgs/jnigen/lib/src/bindings/renamer.dart @@ -75,8 +75,14 @@ const Set _keywords = { }; /// Methods & properties already defined by dart JObject base class. +/// +/// If a second method or field has the same name, it will be appended by a +/// numeric suffix. +/// +// TODO(#571): This system does not work in general, for example, if both +// reference and reference1 exist, they will still clash. const Map _definedSyms = { - 'equals': 1, + 'fromReference': 1, 'toString': 1, 'hashCode': 1, 'runtimeType': 1, @@ -87,18 +93,7 @@ const Map _definedSyms = { 'use': 1, 'release': 1, 'releasedBy': 1, - 'getFieldID': 1, - 'getStaticFieldID': 1, - 'getMethodID': 1, - 'getStaticMethodID': 1, - 'getField': 1, - 'getFieldByName': 1, - 'getStaticField': 1, - 'getStaticFieldByName': 1, - 'callMethod': 1, - 'callMethodByName': 1, - 'callStaticMethod': 1, - 'callStaticMethodByName': 1, + 'jClass': 1, }; /// Appends 0 to [name] if [name] is a keyword. diff --git a/pkgs/jnigen/pubspec.yaml b/pkgs/jnigen/pubspec.yaml index b706169fa4..58c5c83c5e 100644 --- a/pkgs/jnigen/pubspec.yaml +++ b/pkgs/jnigen/pubspec.yaml @@ -8,7 +8,7 @@ version: 0.8.0-wip repository: https://github.com/dart-lang/native/tree/main/pkgs/jnigen environment: - sdk: ">=3.1.0 <4.0.0" + sdk: '>=3.3.0 <4.0.0' topics: - interop diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart index 5edb7b349d..1a47af62ae 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart @@ -50,9 +50,9 @@ class JsonFactory_Feature extends jni.JObject { @override late final jni.JObjType $type = type; - JsonFactory_Feature.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonFactory_Feature.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonFactory_FeatureType(); @@ -64,8 +64,7 @@ class JsonFactory_Feature extends jni.JObject { /// from: static public com.fasterxml.jackson.core.JsonFactory.Feature[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonFactory_FeatureType()) - .fromRef(_values().object); + return _values().object(const jni.JArrayType($JsonFactory_FeatureType())); } static final _valueOf = jniLookup< @@ -79,8 +78,8 @@ class JsonFactory_Feature extends jni.JObject { static JsonFactory_Feature valueOf( jni.JString name, ) { - return const $JsonFactory_FeatureType() - .fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer) + .object(const $JsonFactory_FeatureType()); } static final _collectDefaults = @@ -140,8 +139,8 @@ final class $JsonFactory_FeatureType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonFactory$Feature;"; @override - JsonFactory_Feature fromRef(jni.JObjectPtr ref) => - JsonFactory_Feature.fromRef(ref); + JsonFactory_Feature fromReference(jni.JReference reference) => + JsonFactory_Feature.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -182,9 +181,9 @@ class JsonFactory extends jni.JObject { @override late final jni.JObjType $type = type; - JsonFactory.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonFactory.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonFactoryType(); @@ -199,7 +198,7 @@ class JsonFactory extends jni.JObject { /// Name used to identify JSON format /// (and returned by \#getFormatName() static jni.JString get FORMAT_NAME_JSON => - const jni.JStringType().fromRef(_get_FORMAT_NAME_JSON().object); + _get_FORMAT_NAME_JSON().object(const jni.JStringType()); static final _get_DEFAULT_FACTORY_FEATURE_FLAGS = jniLookup>( @@ -243,8 +242,8 @@ class JsonFactory extends jni.JObject { /// from: static public final com.fasterxml.jackson.core.SerializableString DEFAULT_ROOT_VALUE_SEPARATOR /// The returned object must be released after use, by calling the [release] method. - static jni.JObject get DEFAULT_ROOT_VALUE_SEPARATOR => const jni.JObjectType() - .fromRef(_get_DEFAULT_ROOT_VALUE_SEPARATOR().object); + static jni.JObject get DEFAULT_ROOT_VALUE_SEPARATOR => + _get_DEFAULT_ROOT_VALUE_SEPARATOR().object(const jni.JObjectType()); static final _new0 = jniLookup>( "JsonFactory__new0") @@ -262,7 +261,7 @@ class JsonFactory extends jni.JObject { /// and this reuse only works within context of a single /// factory instance. factory JsonFactory() { - return JsonFactory.fromRef(_new0().object); + return JsonFactory.fromReference(_new0().reference); } static final _new1 = jniLookup< @@ -276,7 +275,7 @@ class JsonFactory extends jni.JObject { factory JsonFactory.new1( jni.JObject oc, ) { - return JsonFactory.fromRef(_new1(oc.reference.pointer).object); + return JsonFactory.fromReference(_new1(oc.reference.pointer).reference); } static final _new2 = jniLookup< @@ -298,8 +297,8 @@ class JsonFactory extends jni.JObject { JsonFactory src, jni.JObject codec, ) { - return JsonFactory.fromRef( - _new2(src.reference.pointer, codec.reference.pointer).object); + return JsonFactory.fromReference( + _new2(src.reference.pointer, codec.reference.pointer).reference); } static final _new3 = jniLookup< @@ -317,7 +316,7 @@ class JsonFactory extends jni.JObject { factory JsonFactory.new3( jni.JObject b, ) { - return JsonFactory.fromRef(_new3(b.reference.pointer).object); + return JsonFactory.fromReference(_new3(b.reference.pointer).reference); } static final _new4 = jniLookup< @@ -338,8 +337,8 @@ class JsonFactory extends jni.JObject { jni.JObject b, bool bogus, ) { - return JsonFactory.fromRef( - _new4(b.reference.pointer, bogus ? 1 : 0).object); + return JsonFactory.fromReference( + _new4(b.reference.pointer, bogus ? 1 : 0).reference); } static final _rebuild = jniLookup< @@ -356,7 +355,7 @@ class JsonFactory extends jni.JObject { ///@return Builder instance to use ///@since 2.10 jni.JObject rebuild() { - return const jni.JObjectType().fromRef(_rebuild(reference.pointer).object); + return _rebuild(reference.pointer).object(const jni.JObjectType()); } static final _builder = @@ -376,7 +375,7 @@ class JsonFactory extends jni.JObject { /// will be fixed in 3.0. ///@return Builder instance to use static jni.JObject builder() { - return const jni.JObjectType().fromRef(_builder().object); + return _builder().object(const jni.JObjectType()); } static final _copy = jniLookup< @@ -401,7 +400,7 @@ class JsonFactory extends jni.JObject { ///@return Copy of this factory instance ///@since 2.1 JsonFactory copy() { - return const $JsonFactoryType().fromRef(_copy(reference.pointer).object); + return _copy(reference.pointer).object(const $JsonFactoryType()); } static final _readResolve = jniLookup< @@ -420,8 +419,7 @@ class JsonFactory extends jni.JObject { /// Note: must be overridden by sub-classes as well. ///@return Newly constructed instance jni.JObject readResolve() { - return const jni.JObjectType() - .fromRef(_readResolve(reference.pointer).object); + return _readResolve(reference.pointer).object(const jni.JObjectType()); } static final _requiresPropertyOrdering = jniLookup< @@ -524,8 +522,8 @@ class JsonFactory extends jni.JObject { /// from: public java.lang.Class getFormatReadFeatureType() /// The returned object must be released after use, by calling the [release] method. jni.JObject getFormatReadFeatureType() { - return const jni.JObjectType() - .fromRef(_getFormatReadFeatureType(reference.pointer).object); + return _getFormatReadFeatureType(reference.pointer) + .object(const jni.JObjectType()); } static final _getFormatWriteFeatureType = jniLookup< @@ -537,8 +535,8 @@ class JsonFactory extends jni.JObject { /// from: public java.lang.Class getFormatWriteFeatureType() /// The returned object must be released after use, by calling the [release] method. jni.JObject getFormatWriteFeatureType() { - return const jni.JObjectType() - .fromRef(_getFormatWriteFeatureType(reference.pointer).object); + return _getFormatWriteFeatureType(reference.pointer) + .object(const jni.JObjectType()); } static final _canUseSchema = jniLookup< @@ -582,8 +580,7 @@ class JsonFactory extends jni.JObject { /// implementation will return null for all sub-classes ///@return Name of the format handled by parsers, generators this factory creates jni.JString getFormatName() { - return const jni.JStringType() - .fromRef(_getFormatName(reference.pointer).object); + return _getFormatName(reference.pointer).object(const jni.JStringType()); } static final _hasFormat = jniLookup< @@ -599,8 +596,8 @@ class JsonFactory extends jni.JObject { jni.JObject hasFormat( jni.JObject acc, ) { - return const jni.JObjectType() - .fromRef(_hasFormat(reference.pointer, acc.reference.pointer).object); + return _hasFormat(reference.pointer, acc.reference.pointer) + .object(const jni.JObjectType()); } static final _requiresCustomCodec = jniLookup< @@ -637,8 +634,8 @@ class JsonFactory extends jni.JObject { jni.JObject hasJSONFormat( jni.JObject acc, ) { - return const jni.JObjectType().fromRef( - _hasJSONFormat(reference.pointer, acc.reference.pointer).object); + return _hasJSONFormat(reference.pointer, acc.reference.pointer) + .object(const jni.JObjectType()); } static final _version = jniLookup< @@ -650,7 +647,7 @@ class JsonFactory extends jni.JObject { /// from: public com.fasterxml.jackson.core.Version version() /// The returned object must be released after use, by calling the [release] method. jni.JObject version() { - return const jni.JObjectType().fromRef(_version(reference.pointer).object); + return _version(reference.pointer).object(const jni.JObjectType()); } static final _configure = jniLookup< @@ -674,9 +671,8 @@ class JsonFactory extends jni.JObject { JsonFactory_Feature f, bool state, ) { - return const $JsonFactoryType().fromRef( - _configure(reference.pointer, f.reference.pointer, state ? 1 : 0) - .object); + return _configure(reference.pointer, f.reference.pointer, state ? 1 : 0) + .object(const $JsonFactoryType()); } static final _enable = jniLookup< @@ -698,8 +694,8 @@ class JsonFactory extends jni.JObject { JsonFactory enable( JsonFactory_Feature f, ) { - return const $JsonFactoryType() - .fromRef(_enable(reference.pointer, f.reference.pointer).object); + return _enable(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _disable = jniLookup< @@ -721,8 +717,8 @@ class JsonFactory extends jni.JObject { JsonFactory disable( JsonFactory_Feature f, ) { - return const $JsonFactoryType() - .fromRef(_disable(reference.pointer, f.reference.pointer).object); + return _disable(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _isEnabled = jniLookup< @@ -808,9 +804,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser_Feature f, bool state, ) { - return const $JsonFactoryType().fromRef( - _configure1(reference.pointer, f.reference.pointer, state ? 1 : 0) - .object); + return _configure1(reference.pointer, f.reference.pointer, state ? 1 : 0) + .object(const $JsonFactoryType()); } static final _enable1 = jniLookup< @@ -831,8 +826,8 @@ class JsonFactory extends jni.JObject { JsonFactory enable1( jsonparser_.JsonParser_Feature f, ) { - return const $JsonFactoryType() - .fromRef(_enable1(reference.pointer, f.reference.pointer).object); + return _enable1(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _disable1 = jniLookup< @@ -853,8 +848,8 @@ class JsonFactory extends jni.JObject { JsonFactory disable1( jsonparser_.JsonParser_Feature f, ) { - return const $JsonFactoryType() - .fromRef(_disable1(reference.pointer, f.reference.pointer).object); + return _disable1(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _isEnabled1 = jniLookup< @@ -909,8 +904,8 @@ class JsonFactory extends jni.JObject { /// there is no default decorator). ///@return InputDecorator configured, if any jni.JObject getInputDecorator() { - return const jni.JObjectType() - .fromRef(_getInputDecorator(reference.pointer).object); + return _getInputDecorator(reference.pointer) + .object(const jni.JObjectType()); } static final _setInputDecorator = jniLookup< @@ -931,8 +926,8 @@ class JsonFactory extends jni.JObject { JsonFactory setInputDecorator( jni.JObject d, ) { - return const $JsonFactoryType().fromRef( - _setInputDecorator(reference.pointer, d.reference.pointer).object); + return _setInputDecorator(reference.pointer, d.reference.pointer) + .object(const $JsonFactoryType()); } static final _configure2 = jniLookup< @@ -955,9 +950,8 @@ class JsonFactory extends jni.JObject { jni.JObject f, bool state, ) { - return const $JsonFactoryType().fromRef( - _configure2(reference.pointer, f.reference.pointer, state ? 1 : 0) - .object); + return _configure2(reference.pointer, f.reference.pointer, state ? 1 : 0) + .object(const $JsonFactoryType()); } static final _enable2 = jniLookup< @@ -978,8 +972,8 @@ class JsonFactory extends jni.JObject { JsonFactory enable2( jni.JObject f, ) { - return const $JsonFactoryType() - .fromRef(_enable2(reference.pointer, f.reference.pointer).object); + return _enable2(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _disable2 = jniLookup< @@ -1000,8 +994,8 @@ class JsonFactory extends jni.JObject { JsonFactory disable2( jni.JObject f, ) { - return const $JsonFactoryType() - .fromRef(_disable2(reference.pointer, f.reference.pointer).object); + return _disable2(reference.pointer, f.reference.pointer) + .object(const $JsonFactoryType()); } static final _isEnabled3 = jniLookup< @@ -1056,8 +1050,8 @@ class JsonFactory extends jni.JObject { /// it creates. ///@return Configured {@code CharacterEscapes}, if any; {@code null} if none jni.JObject getCharacterEscapes() { - return const jni.JObjectType() - .fromRef(_getCharacterEscapes(reference.pointer).object); + return _getCharacterEscapes(reference.pointer) + .object(const jni.JObjectType()); } static final _setCharacterEscapes = jniLookup< @@ -1078,8 +1072,8 @@ class JsonFactory extends jni.JObject { JsonFactory setCharacterEscapes( jni.JObject esc, ) { - return const $JsonFactoryType().fromRef( - _setCharacterEscapes(reference.pointer, esc.reference.pointer).object); + return _setCharacterEscapes(reference.pointer, esc.reference.pointer) + .object(const $JsonFactoryType()); } static final _getOutputDecorator = jniLookup< @@ -1096,8 +1090,8 @@ class JsonFactory extends jni.JObject { ///@return OutputDecorator configured for generators factory creates, if any; /// {@code null} if none. jni.JObject getOutputDecorator() { - return const jni.JObjectType() - .fromRef(_getOutputDecorator(reference.pointer).object); + return _getOutputDecorator(reference.pointer) + .object(const jni.JObjectType()); } static final _setOutputDecorator = jniLookup< @@ -1118,8 +1112,8 @@ class JsonFactory extends jni.JObject { JsonFactory setOutputDecorator( jni.JObject d, ) { - return const $JsonFactoryType().fromRef( - _setOutputDecorator(reference.pointer, d.reference.pointer).object); + return _setOutputDecorator(reference.pointer, d.reference.pointer) + .object(const $JsonFactoryType()); } static final _setRootValueSeparator = jniLookup< @@ -1141,9 +1135,8 @@ class JsonFactory extends jni.JObject { JsonFactory setRootValueSeparator( jni.JString sep, ) { - return const $JsonFactoryType().fromRef( - _setRootValueSeparator(reference.pointer, sep.reference.pointer) - .object); + return _setRootValueSeparator(reference.pointer, sep.reference.pointer) + .object(const $JsonFactoryType()); } static final _getRootValueSeparator = jniLookup< @@ -1157,8 +1150,8 @@ class JsonFactory extends jni.JObject { /// /// @return Root value separator configured, if any jni.JString getRootValueSeparator() { - return const jni.JStringType() - .fromRef(_getRootValueSeparator(reference.pointer).object); + return _getRootValueSeparator(reference.pointer) + .object(const jni.JStringType()); } static final _setCodec = jniLookup< @@ -1182,8 +1175,8 @@ class JsonFactory extends jni.JObject { JsonFactory setCodec( jni.JObject oc, ) { - return const $JsonFactoryType() - .fromRef(_setCodec(reference.pointer, oc.reference.pointer).object); + return _setCodec(reference.pointer, oc.reference.pointer) + .object(const $JsonFactoryType()); } static final _getCodec = jniLookup< @@ -1195,7 +1188,7 @@ class JsonFactory extends jni.JObject { /// from: public com.fasterxml.jackson.core.ObjectCodec getCodec() /// The returned object must be released after use, by calling the [release] method. jni.JObject getCodec() { - return const jni.JObjectType().fromRef(_getCodec(reference.pointer).object); + return _getCodec(reference.pointer).object(const jni.JObjectType()); } static final _createParser = jniLookup< @@ -1228,8 +1221,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser( jni.JObject f, ) { - return const jsonparser_.$JsonParserType() - .fromRef(_createParser(reference.pointer, f.reference.pointer).object); + return _createParser(reference.pointer, f.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser1 = jniLookup< @@ -1260,8 +1253,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser1( jni.JObject url, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser1(reference.pointer, url.reference.pointer).object); + return _createParser1(reference.pointer, url.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser2 = jniLookup< @@ -1295,8 +1288,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser2( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser2(reference.pointer, in0.reference.pointer).object); + return _createParser2(reference.pointer, in0.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser3 = jniLookup< @@ -1323,8 +1316,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser3( jni.JObject r, ) { - return const jsonparser_.$JsonParserType() - .fromRef(_createParser3(reference.pointer, r.reference.pointer).object); + return _createParser3(reference.pointer, r.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser4 = jniLookup< @@ -1344,8 +1337,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser4( jni.JArray data, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser4(reference.pointer, data.reference.pointer).object); + return _createParser4(reference.pointer, data.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser5 = jniLookup< @@ -1373,9 +1366,9 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser5(reference.pointer, data.reference.pointer, offset, len) - .object); + return _createParser5( + reference.pointer, data.reference.pointer, offset, len) + .object(const jsonparser_.$JsonParserType()); } static final _createParser6 = jniLookup< @@ -1395,8 +1388,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser6( jni.JString content, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser6(reference.pointer, content.reference.pointer).object); + return _createParser6(reference.pointer, content.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser7 = jniLookup< @@ -1416,8 +1409,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser7( jni.JArray content, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser7(reference.pointer, content.reference.pointer).object); + return _createParser7(reference.pointer, content.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createParser8 = jniLookup< @@ -1441,9 +1434,9 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef(_createParser8( + return _createParser8( reference.pointer, content.reference.pointer, offset, len) - .object); + .object(const jsonparser_.$JsonParserType()); } static final _createParser9 = jniLookup< @@ -1466,8 +1459,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser9( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createParser9(reference.pointer, in0.reference.pointer).object); + return _createParser9(reference.pointer, in0.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createNonBlockingByteArrayParser = jniLookup< @@ -1493,8 +1486,8 @@ class JsonFactory extends jni.JObject { /// at this point. ///@since 2.9 jsonparser_.JsonParser createNonBlockingByteArrayParser() { - return const jsonparser_.$JsonParserType() - .fromRef(_createNonBlockingByteArrayParser(reference.pointer).object); + return _createNonBlockingByteArrayParser(reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createGenerator = jniLookup< @@ -1532,9 +1525,9 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(_createGenerator( + return _createGenerator( reference.pointer, out.reference.pointer, enc.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _createGenerator1 = jniLookup< @@ -1556,8 +1549,8 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator1( jni.JObject out, ) { - return const jni.JObjectType().fromRef( - _createGenerator1(reference.pointer, out.reference.pointer).object); + return _createGenerator1(reference.pointer, out.reference.pointer) + .object(const jni.JObjectType()); } static final _createGenerator2 = jniLookup< @@ -1585,8 +1578,8 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator2( jni.JObject w, ) { - return const jni.JObjectType().fromRef( - _createGenerator2(reference.pointer, w.reference.pointer).object); + return _createGenerator2(reference.pointer, w.reference.pointer) + .object(const jni.JObjectType()); } static final _createGenerator3 = jniLookup< @@ -1618,9 +1611,9 @@ class JsonFactory extends jni.JObject { jni.JObject f, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(_createGenerator3( + return _createGenerator3( reference.pointer, f.reference.pointer, enc.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _createGenerator4 = jniLookup< @@ -1643,9 +1636,9 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(_createGenerator4( + return _createGenerator4( reference.pointer, out.reference.pointer, enc.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _createGenerator5 = jniLookup< @@ -1667,8 +1660,8 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator5( jni.JObject out, ) { - return const jni.JObjectType().fromRef( - _createGenerator5(reference.pointer, out.reference.pointer).object); + return _createGenerator5(reference.pointer, out.reference.pointer) + .object(const jni.JObjectType()); } static final _createJsonParser = jniLookup< @@ -1703,8 +1696,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser( jni.JObject f, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser(reference.pointer, f.reference.pointer).object); + return _createJsonParser(reference.pointer, f.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser1 = jniLookup< @@ -1738,8 +1731,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser1( jni.JObject url, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser1(reference.pointer, url.reference.pointer).object); + return _createJsonParser1(reference.pointer, url.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser2 = jniLookup< @@ -1776,8 +1769,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser2( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser2(reference.pointer, in0.reference.pointer).object); + return _createJsonParser2(reference.pointer, in0.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser3 = jniLookup< @@ -1807,8 +1800,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser3( jni.JObject r, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser3(reference.pointer, r.reference.pointer).object); + return _createJsonParser3(reference.pointer, r.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser4 = jniLookup< @@ -1831,8 +1824,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser4( jni.JArray data, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser4(reference.pointer, data.reference.pointer).object); + return _createJsonParser4(reference.pointer, data.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser5 = jniLookup< @@ -1863,9 +1856,9 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef(_createJsonParser5( + return _createJsonParser5( reference.pointer, data.reference.pointer, offset, len) - .object); + .object(const jsonparser_.$JsonParserType()); } static final _createJsonParser6 = jniLookup< @@ -1889,9 +1882,8 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser6( jni.JString content, ) { - return const jsonparser_.$JsonParserType().fromRef( - _createJsonParser6(reference.pointer, content.reference.pointer) - .object); + return _createJsonParser6(reference.pointer, content.reference.pointer) + .object(const jsonparser_.$JsonParserType()); } static final _createJsonGenerator = jniLookup< @@ -1931,9 +1923,9 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(_createJsonGenerator( + return _createJsonGenerator( reference.pointer, out.reference.pointer, enc.reference.pointer) - .object); + .object(const jni.JObjectType()); } static final _createJsonGenerator1 = jniLookup< @@ -1963,8 +1955,8 @@ class JsonFactory extends jni.JObject { jni.JObject createJsonGenerator1( jni.JObject out, ) { - return const jni.JObjectType().fromRef( - _createJsonGenerator1(reference.pointer, out.reference.pointer).object); + return _createJsonGenerator1(reference.pointer, out.reference.pointer) + .object(const jni.JObjectType()); } static final _createJsonGenerator2 = jniLookup< @@ -1989,8 +1981,8 @@ class JsonFactory extends jni.JObject { jni.JObject createJsonGenerator2( jni.JObject out, ) { - return const jni.JObjectType().fromRef( - _createJsonGenerator2(reference.pointer, out.reference.pointer).object); + return _createJsonGenerator2(reference.pointer, out.reference.pointer) + .object(const jni.JObjectType()); } } @@ -2001,7 +1993,8 @@ final class $JsonFactoryType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonFactory;"; @override - JsonFactory fromRef(jni.JObjectPtr ref) => JsonFactory.fromRef(ref); + JsonFactory fromReference(jni.JReference reference) => + JsonFactory.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart index 145963248f..dee4d70a98 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart @@ -49,9 +49,9 @@ class JsonParser_Feature extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser_Feature.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser_Feature.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonParser_FeatureType(); @@ -63,8 +63,7 @@ class JsonParser_Feature extends jni.JObject { /// from: static public com.fasterxml.jackson.core.JsonParser.Feature[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonParser_FeatureType()) - .fromRef(_values().object); + return _values().object(const jni.JArrayType($JsonParser_FeatureType())); } static final _valueOf = jniLookup< @@ -78,8 +77,8 @@ class JsonParser_Feature extends jni.JObject { static JsonParser_Feature valueOf( jni.JString name, ) { - return const $JsonParser_FeatureType() - .fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer) + .object(const $JsonParser_FeatureType()); } static final _collectDefaults = @@ -139,8 +138,8 @@ final class $JsonParser_FeatureType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonParser$Feature;"; @override - JsonParser_Feature fromRef(jni.JObjectPtr ref) => - JsonParser_Feature.fromRef(ref); + JsonParser_Feature fromReference(jni.JReference reference) => + JsonParser_Feature.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -166,9 +165,9 @@ class JsonParser_NumberType extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser_NumberType.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser_NumberType.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonParser_NumberTypeType(); @@ -180,8 +179,7 @@ class JsonParser_NumberType extends jni.JObject { /// from: static public com.fasterxml.jackson.core.JsonParser.NumberType[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonParser_NumberTypeType()) - .fromRef(_values().object); + return _values().object(const jni.JArrayType($JsonParser_NumberTypeType())); } static final _valueOf = jniLookup< @@ -195,8 +193,8 @@ class JsonParser_NumberType extends jni.JObject { static JsonParser_NumberType valueOf( jni.JString name, ) { - return const $JsonParser_NumberTypeType() - .fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer) + .object(const $JsonParser_NumberTypeType()); } } @@ -208,8 +206,8 @@ final class $JsonParser_NumberTypeType String get signature => r"Lcom/fasterxml/jackson/core/JsonParser$NumberType;"; @override - JsonParser_NumberType fromRef(jni.JObjectPtr ref) => - JsonParser_NumberType.fromRef(ref); + JsonParser_NumberType fromReference(jni.JReference reference) => + JsonParser_NumberType.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -237,9 +235,9 @@ class JsonParser extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonParserType(); @@ -256,7 +254,7 @@ class JsonParser extends jni.JObject { /// set needs to be passed). ///@since 2.12 static jni.JObject get DEFAULT_READ_CAPABILITIES => - const jni.JObjectType().fromRef(_get_DEFAULT_READ_CAPABILITIES().object); + _get_DEFAULT_READ_CAPABILITIES().object(const jni.JObjectType()); static final _new0 = jniLookup>( "JsonParser__new0") @@ -265,7 +263,7 @@ class JsonParser extends jni.JObject { /// from: protected void () /// The returned object must be released after use, by calling the [release] method. factory JsonParser() { - return JsonParser.fromRef(_new0().object); + return JsonParser.fromReference(_new0().reference); } static final _new1 = @@ -278,7 +276,7 @@ class JsonParser extends jni.JObject { factory JsonParser.new1( int features, ) { - return JsonParser.fromRef(_new1(features).object); + return JsonParser.fromReference(_new1(features).reference); } static final _getCodec = jniLookup< @@ -295,7 +293,7 @@ class JsonParser extends jni.JObject { /// method (and its variants). ///@return Codec assigned to this parser, if any; {@code null} if none jni.JObject getCodec() { - return const jni.JObjectType().fromRef(_getCodec(reference.pointer).object); + return _getCodec(reference.pointer).object(const jni.JObjectType()); } static final _setCodec = jniLookup< @@ -315,7 +313,7 @@ class JsonParser extends jni.JObject { void setCodec( jni.JObject oc, ) { - return _setCodec(reference.pointer, oc.reference.pointer).check(); + _setCodec(reference.pointer, oc.reference.pointer).check(); } static final _getInputSource = jniLookup< @@ -342,8 +340,7 @@ class JsonParser extends jni.JObject { /// "last effort", i.e. only used if no other mechanism is applicable. ///@return Input source this parser was configured with jni.JObject getInputSource() { - return const jni.JObjectType() - .fromRef(_getInputSource(reference.pointer).object); + return _getInputSource(reference.pointer).object(const jni.JObjectType()); } static final _setRequestPayloadOnError = jniLookup< @@ -363,8 +360,7 @@ class JsonParser extends jni.JObject { void setRequestPayloadOnError( jni.JObject payload, ) { - return _setRequestPayloadOnError( - reference.pointer, payload.reference.pointer) + _setRequestPayloadOnError(reference.pointer, payload.reference.pointer) .check(); } @@ -387,8 +383,8 @@ class JsonParser extends jni.JObject { jni.JArray payload, jni.JString charset, ) { - return _setRequestPayloadOnError1(reference.pointer, - payload.reference.pointer, charset.reference.pointer) + _setRequestPayloadOnError1(reference.pointer, payload.reference.pointer, + charset.reference.pointer) .check(); } @@ -409,8 +405,7 @@ class JsonParser extends jni.JObject { void setRequestPayloadOnError2( jni.JString payload, ) { - return _setRequestPayloadOnError2( - reference.pointer, payload.reference.pointer) + _setRequestPayloadOnError2(reference.pointer, payload.reference.pointer) .check(); } @@ -437,7 +432,7 @@ class JsonParser extends jni.JObject { void setSchema( jni.JObject schema, ) { - return _setSchema(reference.pointer, schema.reference.pointer).check(); + _setSchema(reference.pointer, schema.reference.pointer).check(); } static final _getSchema = jniLookup< @@ -454,8 +449,7 @@ class JsonParser extends jni.JObject { ///@return Schema in use by this parser, if any; {@code null} if none ///@since 2.1 jni.JObject getSchema() { - return const jni.JObjectType() - .fromRef(_getSchema(reference.pointer).object); + return _getSchema(reference.pointer).object(const jni.JObjectType()); } static final _canUseSchema = jniLookup< @@ -536,8 +530,8 @@ class JsonParser extends jni.JObject { ///@return Input feeder to use with non-blocking (async) parsing ///@since 2.9 jni.JObject getNonBlockingInputFeeder() { - return const jni.JObjectType() - .fromRef(_getNonBlockingInputFeeder(reference.pointer).object); + return _getNonBlockingInputFeeder(reference.pointer) + .object(const jni.JObjectType()); } static final _getReadCapabilities = jniLookup< @@ -554,8 +548,8 @@ class JsonParser extends jni.JObject { ///@return Set of read capabilities for content to read via this parser ///@since 2.12 jni.JObject getReadCapabilities() { - return const jni.JObjectType() - .fromRef(_getReadCapabilities(reference.pointer).object); + return _getReadCapabilities(reference.pointer) + .object(const jni.JObjectType()); } static final _version = jniLookup< @@ -572,7 +566,7 @@ class JsonParser extends jni.JObject { ///@return Version of this generator (derived from version declared for /// {@code jackson-core} jar that contains the class jni.JObject version() { - return const jni.JObjectType().fromRef(_version(reference.pointer).object); + return _version(reference.pointer).object(const jni.JObjectType()); } static final _close = jniLookup< @@ -598,7 +592,7 @@ class JsonParser extends jni.JObject { /// stream or reader it does own them. ///@throws IOException if there is either an underlying I/O problem void close() { - return _close(reference.pointer).check(); + _close(reference.pointer).check(); } static final _isClosed = jniLookup< @@ -639,8 +633,8 @@ class JsonParser extends jni.JObject { /// input, if so desired. ///@return Stream input context (JsonStreamContext) associated with this parser jni.JObject getParsingContext() { - return const jni.JObjectType() - .fromRef(_getParsingContext(reference.pointer).object); + return _getParsingContext(reference.pointer) + .object(const jni.JObjectType()); } static final _currentLocation = jniLookup< @@ -665,8 +659,7 @@ class JsonParser extends jni.JObject { ///@return Location of the last processed input unit (byte or character) ///@since 2.13 jni.JObject currentLocation() { - return const jni.JObjectType() - .fromRef(_currentLocation(reference.pointer).object); + return _currentLocation(reference.pointer).object(const jni.JObjectType()); } static final _currentTokenLocation = jniLookup< @@ -691,8 +684,8 @@ class JsonParser extends jni.JObject { ///@return Starting location of the token parser currently points to ///@since 2.13 (will eventually replace \#getTokenLocation) jni.JObject currentTokenLocation() { - return const jni.JObjectType() - .fromRef(_currentTokenLocation(reference.pointer).object); + return _currentTokenLocation(reference.pointer) + .object(const jni.JObjectType()); } static final _getCurrentLocation = jniLookup< @@ -708,8 +701,8 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Location of the last processed input unit (byte or character) jni.JObject getCurrentLocation() { - return const jni.JObjectType() - .fromRef(_getCurrentLocation(reference.pointer).object); + return _getCurrentLocation(reference.pointer) + .object(const jni.JObjectType()); } static final _getTokenLocation = jniLookup< @@ -725,8 +718,7 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Starting location of the token parser currently points to jni.JObject getTokenLocation() { - return const jni.JObjectType() - .fromRef(_getTokenLocation(reference.pointer).object); + return _getTokenLocation(reference.pointer).object(const jni.JObjectType()); } static final _currentValue = jniLookup< @@ -750,8 +742,7 @@ class JsonParser extends jni.JObject { ///@return "Current value" associated with the current input context (state) of this parser ///@since 2.13 (added as replacement for older \#getCurrentValue() jni.JObject currentValue() { - return const jni.JObjectType() - .fromRef(_currentValue(reference.pointer).object); + return _currentValue(reference.pointer).object(const jni.JObjectType()); } static final _assignCurrentValue = jniLookup< @@ -773,7 +764,7 @@ class JsonParser extends jni.JObject { void assignCurrentValue( jni.JObject v, ) { - return _assignCurrentValue(reference.pointer, v.reference.pointer).check(); + _assignCurrentValue(reference.pointer, v.reference.pointer).check(); } static final _getCurrentValue = jniLookup< @@ -789,8 +780,7 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Location of the last processed input unit (byte or character) jni.JObject getCurrentValue() { - return const jni.JObjectType() - .fromRef(_getCurrentValue(reference.pointer).object); + return _getCurrentValue(reference.pointer).object(const jni.JObjectType()); } static final _setCurrentValue = jniLookup< @@ -809,7 +799,7 @@ class JsonParser extends jni.JObject { void setCurrentValue( jni.JObject v, ) { - return _setCurrentValue(reference.pointer, v.reference.pointer).check(); + _setCurrentValue(reference.pointer, v.reference.pointer).check(); } static final _releaseBuffered = jniLookup< @@ -885,8 +875,8 @@ class JsonParser extends jni.JObject { JsonParser enable( JsonParser_Feature f, ) { - return const $JsonParserType() - .fromRef(_enable(reference.pointer, f.reference.pointer).object); + return _enable(reference.pointer, f.reference.pointer) + .object(const $JsonParserType()); } static final _disable = jniLookup< @@ -907,8 +897,8 @@ class JsonParser extends jni.JObject { JsonParser disable( JsonParser_Feature f, ) { - return const $JsonParserType() - .fromRef(_disable(reference.pointer, f.reference.pointer).object); + return _disable(reference.pointer, f.reference.pointer) + .object(const $JsonParserType()); } static final _configure = jniLookup< @@ -931,9 +921,8 @@ class JsonParser extends jni.JObject { JsonParser_Feature f, bool state, ) { - return const $JsonParserType().fromRef( - _configure(reference.pointer, f.reference.pointer, state ? 1 : 0) - .object); + return _configure(reference.pointer, f.reference.pointer, state ? 1 : 0) + .object(const $JsonParserType()); } static final _isEnabled = jniLookup< @@ -1007,8 +996,8 @@ class JsonParser extends jni.JObject { JsonParser setFeatureMask( int mask, ) { - return const $JsonParserType() - .fromRef(_setFeatureMask(reference.pointer, mask).object); + return _setFeatureMask(reference.pointer, mask) + .object(const $JsonParserType()); } static final _overrideStdFeatures = jniLookup< @@ -1036,8 +1025,8 @@ class JsonParser extends jni.JObject { int values, int mask, ) { - return const $JsonParserType() - .fromRef(_overrideStdFeatures(reference.pointer, values, mask).object); + return _overrideStdFeatures(reference.pointer, values, mask) + .object(const $JsonParserType()); } static final _getFormatFeatures = jniLookup< @@ -1079,8 +1068,8 @@ class JsonParser extends jni.JObject { int values, int mask, ) { - return const $JsonParserType().fromRef( - _overrideFormatFeatures(reference.pointer, values, mask).object); + return _overrideFormatFeatures(reference.pointer, values, mask) + .object(const $JsonParserType()); } static final _nextToken = jniLookup< @@ -1101,8 +1090,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jsontoken_.JsonToken nextToken() { - return const jsontoken_.$JsonTokenType() - .fromRef(_nextToken(reference.pointer).object); + return _nextToken(reference.pointer) + .object(const jsontoken_.$JsonTokenType()); } static final _nextValue = jniLookup< @@ -1131,8 +1120,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jsontoken_.JsonToken nextValue() { - return const jsontoken_.$JsonTokenType() - .fromRef(_nextValue(reference.pointer).object); + return _nextValue(reference.pointer) + .object(const jsontoken_.$JsonTokenType()); } static final _nextFieldName = jniLookup< @@ -1184,8 +1173,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.5 jni.JString nextFieldName1() { - return const jni.JStringType() - .fromRef(_nextFieldName1(reference.pointer).object); + return _nextFieldName1(reference.pointer).object(const jni.JStringType()); } static final _nextTextValue = jniLookup< @@ -1211,8 +1199,7 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString nextTextValue() { - return const jni.JStringType() - .fromRef(_nextTextValue(reference.pointer).object); + return _nextTextValue(reference.pointer).object(const jni.JStringType()); } static final _nextIntValue = jniLookup< @@ -1303,8 +1290,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JBoolean nextBooleanValue() { - return const jni.JBooleanType() - .fromRef(_nextBooleanValue(reference.pointer).object); + return _nextBooleanValue(reference.pointer) + .object(const jni.JBooleanType()); } static final _skipChildren = jniLookup< @@ -1332,8 +1319,7 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems JsonParser skipChildren() { - return const $JsonParserType() - .fromRef(_skipChildren(reference.pointer).object); + return _skipChildren(reference.pointer).object(const $JsonParserType()); } static final _finishToken = jniLookup< @@ -1358,7 +1344,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.8 void finishToken() { - return _finishToken(reference.pointer).check(); + _finishToken(reference.pointer).check(); } static final _currentToken = jniLookup< @@ -1380,8 +1366,8 @@ class JsonParser extends jni.JObject { /// if the current token has been explicitly cleared. ///@since 2.8 jsontoken_.JsonToken currentToken() { - return const jsontoken_.$JsonTokenType() - .fromRef(_currentToken(reference.pointer).object); + return _currentToken(reference.pointer) + .object(const jsontoken_.$JsonTokenType()); } static final _currentTokenId = jniLookup< @@ -1419,8 +1405,8 @@ class JsonParser extends jni.JObject { ///@return Type of the token this parser currently points to, /// if any: null before any tokens have been read, and jsontoken_.JsonToken getCurrentToken() { - return const jsontoken_.$JsonTokenType() - .fromRef(_getCurrentToken(reference.pointer).object); + return _getCurrentToken(reference.pointer) + .object(const jsontoken_.$JsonTokenType()); } static final _getCurrentTokenId = jniLookup< @@ -1622,7 +1608,7 @@ class JsonParser extends jni.JObject { /// it has to be able to consume last token used for binding (so that /// it will not be used again). void clearCurrentToken() { - return _clearCurrentToken(reference.pointer).check(); + _clearCurrentToken(reference.pointer).check(); } static final _getLastClearedToken = jniLookup< @@ -1641,8 +1627,8 @@ class JsonParser extends jni.JObject { /// or if parser has been closed. ///@return Last cleared token, if any; {@code null} otherwise jsontoken_.JsonToken getLastClearedToken() { - return const jsontoken_.$JsonTokenType() - .fromRef(_getLastClearedToken(reference.pointer).object); + return _getLastClearedToken(reference.pointer) + .object(const jsontoken_.$JsonTokenType()); } static final _overrideCurrentName = jniLookup< @@ -1666,8 +1652,7 @@ class JsonParser extends jni.JObject { void overrideCurrentName( jni.JString name, ) { - return _overrideCurrentName(reference.pointer, name.reference.pointer) - .check(); + _overrideCurrentName(reference.pointer, name.reference.pointer).check(); } static final _getCurrentName = jniLookup< @@ -1684,8 +1669,7 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString getCurrentName() { - return const jni.JStringType() - .fromRef(_getCurrentName(reference.pointer).object); + return _getCurrentName(reference.pointer).object(const jni.JStringType()); } static final _currentName = jniLookup< @@ -1707,8 +1691,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.10 jni.JString currentName() { - return const jni.JStringType() - .fromRef(_currentName(reference.pointer).object); + return _currentName(reference.pointer).object(const jni.JStringType()); } static final _getText = jniLookup< @@ -1729,7 +1712,7 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString getText() { - return const jni.JStringType().fromRef(_getText(reference.pointer).object); + return _getText(reference.pointer).object(const jni.JStringType()); } static final _getText1 = jniLookup< @@ -1800,8 +1783,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JArray getTextCharacters() { - return const jni.JArrayType(jni.jcharType()) - .fromRef(_getTextCharacters(reference.pointer).object); + return _getTextCharacters(reference.pointer) + .object(const jni.JArrayType(jni.jcharType())); } static final _getTextLength = jniLookup< @@ -1888,8 +1871,7 @@ class JsonParser extends jni.JObject { /// (invalid format for numbers); plain IOException if underlying /// content read fails (possible if values are extracted lazily) jni.JNumber getNumberValue() { - return const jni.JNumberType() - .fromRef(_getNumberValue(reference.pointer).object); + return _getNumberValue(reference.pointer).object(const jni.JNumberType()); } static final _getNumberValueExact = jniLookup< @@ -1916,8 +1898,8 @@ class JsonParser extends jni.JObject { /// content read fails (possible if values are extracted lazily) ///@since 2.12 jni.JNumber getNumberValueExact() { - return const jni.JNumberType() - .fromRef(_getNumberValueExact(reference.pointer).object); + return _getNumberValueExact(reference.pointer) + .object(const jni.JNumberType()); } static final _getNumberType = jniLookup< @@ -1937,8 +1919,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems JsonParser_NumberType getNumberType() { - return const $JsonParser_NumberTypeType() - .fromRef(_getNumberType(reference.pointer).object); + return _getNumberType(reference.pointer) + .object(const $JsonParser_NumberTypeType()); } static final _getByteValue = jniLookup< @@ -2076,8 +2058,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getBigIntegerValue() { - return const jni.JObjectType() - .fromRef(_getBigIntegerValue(reference.pointer).object); + return _getBigIntegerValue(reference.pointer) + .object(const jni.JObjectType()); } static final _getFloatValue = jniLookup< @@ -2152,8 +2134,7 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getDecimalValue() { - return const jni.JObjectType() - .fromRef(_getDecimalValue(reference.pointer).object); + return _getDecimalValue(reference.pointer).object(const jni.JObjectType()); } static final _getBooleanValue = jniLookup< @@ -2203,8 +2184,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getEmbeddedObject() { - return const jni.JObjectType() - .fromRef(_getEmbeddedObject(reference.pointer).object); + return _getEmbeddedObject(reference.pointer) + .object(const jni.JObjectType()); } static final _getBinaryValue = jniLookup< @@ -2241,8 +2222,8 @@ class JsonParser extends jni.JObject { jni.JArray getBinaryValue( jni.JObject bv, ) { - return const jni.JArrayType(jni.jbyteType()).fromRef( - _getBinaryValue(reference.pointer, bv.reference.pointer).object); + return _getBinaryValue(reference.pointer, bv.reference.pointer) + .object(const jni.JArrayType(jni.jbyteType())); } static final _getBinaryValue1 = jniLookup< @@ -2261,8 +2242,8 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JArray getBinaryValue1() { - return const jni.JArrayType(jni.jbyteType()) - .fromRef(_getBinaryValue1(reference.pointer).object); + return _getBinaryValue1(reference.pointer) + .object(const jni.JArrayType(jni.jbyteType())); } static final _readBinaryValue = jniLookup< @@ -2550,8 +2531,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.1 jni.JString getValueAsString() { - return const jni.JStringType() - .fromRef(_getValueAsString(reference.pointer).object); + return _getValueAsString(reference.pointer).object(const jni.JStringType()); } static final _getValueAsString1 = jniLookup< @@ -2580,8 +2560,8 @@ class JsonParser extends jni.JObject { jni.JString getValueAsString1( jni.JString def, ) { - return const jni.JStringType().fromRef( - _getValueAsString1(reference.pointer, def.reference.pointer).object); + return _getValueAsString1(reference.pointer, def.reference.pointer) + .object(const jni.JStringType()); } static final _canReadObjectId = jniLookup< @@ -2653,8 +2633,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.3 jni.JObject getObjectId() { - return const jni.JObjectType() - .fromRef(_getObjectId(reference.pointer).object); + return _getObjectId(reference.pointer).object(const jni.JObjectType()); } static final _getTypeId = jniLookup< @@ -2680,8 +2659,7 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.3 jni.JObject getTypeId() { - return const jni.JObjectType() - .fromRef(_getTypeId(reference.pointer).object); + return _getTypeId(reference.pointer).object(const jni.JObjectType()); } static final _readValueAs = jniLookup< @@ -2724,8 +2702,8 @@ class JsonParser extends jni.JObject { jni.JObject valueType, { required jni.JObjType<$T> T, }) { - return T.fromRef( - _readValueAs(reference.pointer, valueType.reference.pointer).object); + return _readValueAs(reference.pointer, valueType.reference.pointer) + .object(T); } static final _readValueAs1 = jniLookup< @@ -2765,9 +2743,8 @@ class JsonParser extends jni.JObject { jni.JObject valueTypeRef, { required jni.JObjType<$T> T, }) { - return T.fromRef( - _readValueAs1(reference.pointer, valueTypeRef.reference.pointer) - .object); + return _readValueAs1(reference.pointer, valueTypeRef.reference.pointer) + .object(T); } static final _readValuesAs = jniLookup< @@ -2793,8 +2770,8 @@ class JsonParser extends jni.JObject { jni.JObject valueType, { required jni.JObjType<$T> T, }) { - return jni.JIteratorType(T).fromRef( - _readValuesAs(reference.pointer, valueType.reference.pointer).object); + return _readValuesAs(reference.pointer, valueType.reference.pointer) + .object(jni.JIteratorType(T)); } static final _readValuesAs1 = jniLookup< @@ -2820,9 +2797,8 @@ class JsonParser extends jni.JObject { jni.JObject valueTypeRef, { required jni.JObjType<$T> T, }) { - return jni.JIteratorType(T).fromRef( - _readValuesAs1(reference.pointer, valueTypeRef.reference.pointer) - .object); + return _readValuesAs1(reference.pointer, valueTypeRef.reference.pointer) + .object(jni.JIteratorType(T)); } static final _readValueAsTree = jniLookup< @@ -2846,7 +2822,7 @@ class JsonParser extends jni.JObject { $T readValueAsTree<$T extends jni.JObject>({ required jni.JObjType<$T> T, }) { - return T.fromRef(_readValueAsTree(reference.pointer).object); + return _readValueAsTree(reference.pointer).object(T); } } @@ -2857,7 +2833,8 @@ final class $JsonParserType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonParser;"; @override - JsonParser fromRef(jni.JObjectPtr ref) => JsonParser.fromRef(ref); + JsonParser fromReference(jni.JReference reference) => + JsonParser.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart index 05468908dc..28fe6d7f92 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart @@ -49,9 +49,9 @@ class JsonToken extends jni.JObject { @override late final jni.JObjType $type = type; - JsonToken.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonToken.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonTokenType(); @@ -63,7 +63,7 @@ class JsonToken extends jni.JObject { /// from: static public com.fasterxml.jackson.core.JsonToken[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonTokenType()).fromRef(_values().object); + return _values().object(const jni.JArrayType($JsonTokenType())); } static final _valueOf = jniLookup< @@ -77,8 +77,7 @@ class JsonToken extends jni.JObject { static JsonToken valueOf( jni.JString name, ) { - return const $JsonTokenType() - .fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer).object(const $JsonTokenType()); } static final _id = jniLookup< @@ -100,7 +99,7 @@ class JsonToken extends jni.JObject { /// from: public final java.lang.String asString() /// The returned object must be released after use, by calling the [release] method. jni.JString asString() { - return const jni.JStringType().fromRef(_asString(reference.pointer).object); + return _asString(reference.pointer).object(const jni.JStringType()); } static final _asCharArray = jniLookup< @@ -112,8 +111,8 @@ class JsonToken extends jni.JObject { /// from: public final char[] asCharArray() /// The returned object must be released after use, by calling the [release] method. jni.JArray asCharArray() { - return const jni.JArrayType(jni.jcharType()) - .fromRef(_asCharArray(reference.pointer).object); + return _asCharArray(reference.pointer) + .object(const jni.JArrayType(jni.jcharType())); } static final _asByteArray = jniLookup< @@ -125,8 +124,8 @@ class JsonToken extends jni.JObject { /// from: public final byte[] asByteArray() /// The returned object must be released after use, by calling the [release] method. jni.JArray asByteArray() { - return const jni.JArrayType(jni.jbyteType()) - .fromRef(_asByteArray(reference.pointer).object); + return _asByteArray(reference.pointer) + .object(const jni.JArrayType(jni.jbyteType())); } static final _isNumeric = jniLookup< @@ -221,7 +220,8 @@ final class $JsonTokenType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonToken;"; @override - JsonToken fromRef(jni.JObjectPtr ref) => JsonToken.fromRef(ref); + JsonToken fromReference(jni.JReference reference) => + JsonToken.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart index f8d55f1bfa..5295cb719c 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonFactory.dart @@ -49,45 +49,45 @@ class JsonFactory_Feature extends jni.JObject { @override late final jni.JObjType $type = type; - JsonFactory_Feature.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonFactory_Feature.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonFactory$Feature"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonFactory$Feature"); /// The type which includes information such as the signature of this class. static const type = $JsonFactory_FeatureType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/fasterxml/jackson/core/JsonFactory$Feature;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/fasterxml/jackson/core/JsonFactory$Feature;", + ); /// from: static public com.fasterxml.jackson.core.JsonFactory.Feature[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonFactory_FeatureType()).fromRef( - jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_values, jni.JniCallType.objectType, []).object); + return _id_values( + _class, const jni.JArrayType($JsonFactory_FeatureType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonFactory$Feature;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonFactory$Feature;", + ); /// from: static public com.fasterxml.jackson.core.JsonFactory.Feature valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static JsonFactory_Feature valueOf( jni.JString name, ) { - return const $JsonFactory_FeatureType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf( + _class, const $JsonFactory_FeatureType(), [name.reference.pointer]); } - static final _id_collectDefaults = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"collectDefaults", r"()I"); + static final _id_collectDefaults = _class.staticMethodId( + r"collectDefaults", + r"()I", + ); /// from: static public int collectDefaults() /// @@ -95,40 +95,40 @@ class JsonFactory_Feature extends jni.JObject { /// are enabled by default. ///@return Bit field of features enabled by default static int collectDefaults() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_collectDefaults, jni.JniCallType.intType, []).integer; + return _id_collectDefaults(_class, const jni.jintType(), []); } - static final _id_enabledByDefault = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"enabledByDefault", r"()Z"); + static final _id_enabledByDefault = _class.instanceMethodId( + r"enabledByDefault", + r"()Z", + ); /// from: public boolean enabledByDefault() bool enabledByDefault() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_enabledByDefault, jni.JniCallType.booleanType, []).boolean; + return _id_enabledByDefault(this, const jni.jbooleanType(), []); } - static final _id_enabledIn = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"enabledIn", r"(I)Z"); + static final _id_enabledIn = _class.instanceMethodId( + r"enabledIn", + r"(I)Z", + ); /// from: public boolean enabledIn(int flags) bool enabledIn( int flags, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_enabledIn, - jni.JniCallType.booleanType, - [jni.JValueInt(flags)]).boolean; + return _id_enabledIn( + this, const jni.jbooleanType(), [jni.JValueInt(flags)]); } - static final _id_getMask = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getMask", r"()I"); + static final _id_getMask = _class.instanceMethodId( + r"getMask", + r"()I", + ); /// from: public int getMask() int getMask() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getMask, jni.JniCallType.intType, []).integer; + return _id_getMask(this, const jni.jintType(), []); } } @@ -139,8 +139,8 @@ final class $JsonFactory_FeatureType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonFactory$Feature;"; @override - JsonFactory_Feature fromRef(jni.JObjectPtr ref) => - JsonFactory_Feature.fromRef(ref); + JsonFactory_Feature fromReference(jni.JReference reference) => + JsonFactory_Feature.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -181,17 +181,16 @@ class JsonFactory extends jni.JObject { @override late final jni.JObjType $type = type; - JsonFactory.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonFactory.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonFactory"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonFactory"); /// The type which includes information such as the signature of this class. static const type = $JsonFactoryType(); - static final _id_FORMAT_NAME_JSON = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_FORMAT_NAME_JSON = _class.staticFieldId( r"FORMAT_NAME_JSON", r"Ljava/lang/String;", ); @@ -202,14 +201,9 @@ class JsonFactory extends jni.JObject { /// Name used to identify JSON format /// (and returned by \#getFormatName() static jni.JString get FORMAT_NAME_JSON => - const jni.JStringType().fromRef(jni.Jni.accessors - .getStaticField(_class.reference.pointer, _id_FORMAT_NAME_JSON, - jni.JniCallType.objectType) - .object); - - static final _id_DEFAULT_FACTORY_FEATURE_FLAGS = - jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + _id_FORMAT_NAME_JSON.get(_class, const jni.JStringType()); + + static final _id_DEFAULT_FACTORY_FEATURE_FLAGS = _class.staticFieldId( r"DEFAULT_FACTORY_FEATURE_FLAGS", r"I", ); @@ -217,14 +211,10 @@ class JsonFactory extends jni.JObject { /// from: static protected final int DEFAULT_FACTORY_FEATURE_FLAGS /// /// Bitfield (set of flags) of all factory features that are enabled by default. - static int get DEFAULT_FACTORY_FEATURE_FLAGS => jni.Jni.accessors - .getStaticField(_class.reference.pointer, - _id_DEFAULT_FACTORY_FEATURE_FLAGS, jni.JniCallType.intType) - .integer; - - static final _id_DEFAULT_PARSER_FEATURE_FLAGS = - jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static int get DEFAULT_FACTORY_FEATURE_FLAGS => + _id_DEFAULT_FACTORY_FEATURE_FLAGS.get(_class, const jni.jintType()); + + static final _id_DEFAULT_PARSER_FEATURE_FLAGS = _class.staticFieldId( r"DEFAULT_PARSER_FEATURE_FLAGS", r"I", ); @@ -233,14 +223,10 @@ class JsonFactory extends jni.JObject { /// /// Bitfield (set of flags) of all parser features that are enabled /// by default. - static int get DEFAULT_PARSER_FEATURE_FLAGS => jni.Jni.accessors - .getStaticField(_class.reference.pointer, - _id_DEFAULT_PARSER_FEATURE_FLAGS, jni.JniCallType.intType) - .integer; - - static final _id_DEFAULT_GENERATOR_FEATURE_FLAGS = - jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static int get DEFAULT_PARSER_FEATURE_FLAGS => + _id_DEFAULT_PARSER_FEATURE_FLAGS.get(_class, const jni.jintType()); + + static final _id_DEFAULT_GENERATOR_FEATURE_FLAGS = _class.staticFieldId( r"DEFAULT_GENERATOR_FEATURE_FLAGS", r"I", ); @@ -249,14 +235,10 @@ class JsonFactory extends jni.JObject { /// /// Bitfield (set of flags) of all generator features that are enabled /// by default. - static int get DEFAULT_GENERATOR_FEATURE_FLAGS => jni.Jni.accessors - .getStaticField(_class.reference.pointer, - _id_DEFAULT_GENERATOR_FEATURE_FLAGS, jni.JniCallType.intType) - .integer; - - static final _id_DEFAULT_ROOT_VALUE_SEPARATOR = - jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static int get DEFAULT_GENERATOR_FEATURE_FLAGS => + _id_DEFAULT_GENERATOR_FEATURE_FLAGS.get(_class, const jni.jintType()); + + static final _id_DEFAULT_ROOT_VALUE_SEPARATOR = _class.staticFieldId( r"DEFAULT_ROOT_VALUE_SEPARATOR", r"Lcom/fasterxml/jackson/core/SerializableString;", ); @@ -264,13 +246,11 @@ class JsonFactory extends jni.JObject { /// from: static public final com.fasterxml.jackson.core.SerializableString DEFAULT_ROOT_VALUE_SEPARATOR /// The returned object must be released after use, by calling the [release] method. static jni.JObject get DEFAULT_ROOT_VALUE_SEPARATOR => - const jni.JObjectType().fromRef(jni.Jni.accessors - .getStaticField(_class.reference.pointer, - _id_DEFAULT_ROOT_VALUE_SEPARATOR, jni.JniCallType.objectType) - .object); + _id_DEFAULT_ROOT_VALUE_SEPARATOR.get(_class, const jni.JObjectType()); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. @@ -284,28 +264,25 @@ class JsonFactory extends jni.JObject { /// and this reuse only works within context of a single /// factory instance. factory JsonFactory() { - return JsonFactory.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return JsonFactory.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_new1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/fasterxml/jackson/core/ObjectCodec;)V"); + static final _id_new1 = _class.constructorId( + r"(Lcom/fasterxml/jackson/core/ObjectCodec;)V", + ); /// from: public void (com.fasterxml.jackson.core.ObjectCodec oc) /// The returned object must be released after use, by calling the [release] method. factory JsonFactory.new1( jni.JObject oc, ) { - return JsonFactory.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new1, [oc.reference.pointer]).object); + return JsonFactory.fromReference( + _id_new1(_class, referenceType, [oc.reference.pointer])); } - static final _id_new2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/fasterxml/jackson/core/JsonFactory;Lcom/fasterxml/jackson/core/ObjectCodec;)V"); + static final _id_new2 = _class.constructorId( + r"(Lcom/fasterxml/jackson/core/JsonFactory;Lcom/fasterxml/jackson/core/ObjectCodec;)V", + ); /// from: protected void (com.fasterxml.jackson.core.JsonFactory src, com.fasterxml.jackson.core.ObjectCodec codec) /// The returned object must be released after use, by calling the [release] method. @@ -318,16 +295,13 @@ class JsonFactory extends jni.JObject { JsonFactory src, jni.JObject codec, ) { - return JsonFactory.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, - _id_new2, - [src.reference.pointer, codec.reference.pointer]).object); + return JsonFactory.fromReference(_id_new2(_class, referenceType, + [src.reference.pointer, codec.reference.pointer])); } - static final _id_new3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/fasterxml/jackson/core/JsonFactoryBuilder;)V"); + static final _id_new3 = _class.constructorId( + r"(Lcom/fasterxml/jackson/core/JsonFactoryBuilder;)V", + ); /// from: public void (com.fasterxml.jackson.core.JsonFactoryBuilder b) /// The returned object must be released after use, by calling the [release] method. @@ -338,14 +312,13 @@ class JsonFactory extends jni.JObject { factory JsonFactory.new3( jni.JObject b, ) { - return JsonFactory.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new3, [b.reference.pointer]).object); + return JsonFactory.fromReference( + _id_new3(_class, referenceType, [b.reference.pointer])); } - static final _id_new4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/fasterxml/jackson/core/TSFBuilder;Z)V"); + static final _id_new4 = _class.constructorId( + r"(Lcom/fasterxml/jackson/core/TSFBuilder;Z)V", + ); /// from: protected void (com.fasterxml.jackson.core.TSFBuilder b, boolean bogus) /// The returned object must be released after use, by calling the [release] method. @@ -359,16 +332,14 @@ class JsonFactory extends jni.JObject { jni.JObject b, bool bogus, ) { - return JsonFactory.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, - _id_new4, - [b.reference.pointer, bogus ? 1 : 0]).object); + return JsonFactory.fromReference( + _id_new4(_class, referenceType, [b.reference.pointer, bogus ? 1 : 0])); } - static final _id_rebuild = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"rebuild", - r"()Lcom/fasterxml/jackson/core/TSFBuilder;"); + static final _id_rebuild = _class.instanceMethodId( + r"rebuild", + r"()Lcom/fasterxml/jackson/core/TSFBuilder;", + ); /// from: public com.fasterxml.jackson.core.TSFBuilder rebuild() /// The returned object must be released after use, by calling the [release] method. @@ -378,14 +349,13 @@ class JsonFactory extends jni.JObject { ///@return Builder instance to use ///@since 2.10 jni.JObject rebuild() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_rebuild, jni.JniCallType.objectType, []).object); + return _id_rebuild(this, const jni.JObjectType(), []); } - static final _id_builder = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"builder", - r"()Lcom/fasterxml/jackson/core/TSFBuilder;"); + static final _id_builder = _class.staticMethodId( + r"builder", + r"()Lcom/fasterxml/jackson/core/TSFBuilder;", + ); /// from: static public com.fasterxml.jackson.core.TSFBuilder builder() /// The returned object must be released after use, by calling the [release] method. @@ -399,15 +369,13 @@ class JsonFactory extends jni.JObject { /// will be fixed in 3.0. ///@return Builder instance to use static jni.JObject builder() { - return const jni.JObjectType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_builder, - jni.JniCallType.objectType, []).object); + return _id_builder(_class, const jni.JObjectType(), []); } - static final _id_copy = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"copy", - r"()Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_copy = _class.instanceMethodId( + r"copy", + r"()Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory copy() /// The returned object must be released after use, by calling the [release] method. @@ -425,13 +393,13 @@ class JsonFactory extends jni.JObject { ///@return Copy of this factory instance ///@since 2.1 JsonFactory copy() { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_copy, - jni.JniCallType.objectType, []).object); + return _id_copy(this, const $JsonFactoryType(), []); } - static final _id_readResolve = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"readResolve", r"()Ljava/lang/Object;"); + static final _id_readResolve = _class.instanceMethodId( + r"readResolve", + r"()Ljava/lang/Object;", + ); /// from: protected java.lang.Object readResolve() /// The returned object must be released after use, by calling the [release] method. @@ -443,14 +411,13 @@ class JsonFactory extends jni.JObject { /// Note: must be overridden by sub-classes as well. ///@return Newly constructed instance jni.JObject readResolve() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readResolve, - jni.JniCallType.objectType, []).object); + return _id_readResolve(this, const jni.JObjectType(), []); } - static final _id_requiresPropertyOrdering = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"requiresPropertyOrdering", r"()Z"); + static final _id_requiresPropertyOrdering = _class.instanceMethodId( + r"requiresPropertyOrdering", + r"()Z", + ); /// from: public boolean requiresPropertyOrdering() /// @@ -469,12 +436,13 @@ class JsonFactory extends jni.JObject { /// requires Object properties to be ordered. ///@since 2.3 bool requiresPropertyOrdering() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_requiresPropertyOrdering, jni.JniCallType.booleanType, []).boolean; + return _id_requiresPropertyOrdering(this, const jni.jbooleanType(), []); } - static final _id_canHandleBinaryNatively = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"canHandleBinaryNatively", r"()Z"); + static final _id_canHandleBinaryNatively = _class.instanceMethodId( + r"canHandleBinaryNatively", + r"()Z", + ); /// from: public boolean canHandleBinaryNatively() /// @@ -490,12 +458,13 @@ class JsonFactory extends jni.JObject { /// supports native binary content ///@since 2.3 bool canHandleBinaryNatively() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canHandleBinaryNatively, jni.JniCallType.booleanType, []).boolean; + return _id_canHandleBinaryNatively(this, const jni.jbooleanType(), []); } - static final _id_canUseCharArrays = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"canUseCharArrays", r"()Z"); + static final _id_canUseCharArrays = _class.instanceMethodId( + r"canUseCharArrays", + r"()Z", + ); /// from: public boolean canUseCharArrays() /// @@ -511,12 +480,13 @@ class JsonFactory extends jni.JObject { /// accessed using parser method {@code getTextCharacters()}. ///@since 2.4 bool canUseCharArrays() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canUseCharArrays, jni.JniCallType.booleanType, []).boolean; + return _id_canUseCharArrays(this, const jni.jbooleanType(), []); } - static final _id_canParseAsync = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"canParseAsync", r"()Z"); + static final _id_canParseAsync = _class.instanceMethodId( + r"canParseAsync", + r"()Z", + ); /// from: public boolean canParseAsync() /// @@ -528,42 +498,35 @@ class JsonFactory extends jni.JObject { /// not (and consequently whether {@code createNonBlockingXxx()} method(s) work) ///@since 2.9 bool canParseAsync() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canParseAsync, jni.JniCallType.booleanType, []).boolean; + return _id_canParseAsync(this, const jni.jbooleanType(), []); } - static final _id_getFormatReadFeatureType = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getFormatReadFeatureType", - r"()Ljava/lang/Class;"); + static final _id_getFormatReadFeatureType = _class.instanceMethodId( + r"getFormatReadFeatureType", + r"()Ljava/lang/Class;", + ); /// from: public java.lang.Class getFormatReadFeatureType() /// The returned object must be released after use, by calling the [release] method. jni.JObject getFormatReadFeatureType() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getFormatReadFeatureType, - jni.JniCallType.objectType, []).object); + return _id_getFormatReadFeatureType(this, const jni.JObjectType(), []); } - static final _id_getFormatWriteFeatureType = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getFormatWriteFeatureType", - r"()Ljava/lang/Class;"); + static final _id_getFormatWriteFeatureType = _class.instanceMethodId( + r"getFormatWriteFeatureType", + r"()Ljava/lang/Class;", + ); /// from: public java.lang.Class getFormatWriteFeatureType() /// The returned object must be released after use, by calling the [release] method. jni.JObject getFormatWriteFeatureType() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getFormatWriteFeatureType, - jni.JniCallType.objectType, []).object); + return _id_getFormatWriteFeatureType(this, const jni.JObjectType(), []); } - static final _id_canUseSchema = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"canUseSchema", - r"(Lcom/fasterxml/jackson/core/FormatSchema;)Z"); + static final _id_canUseSchema = _class.instanceMethodId( + r"canUseSchema", + r"(Lcom/fasterxml/jackson/core/FormatSchema;)Z", + ); /// from: public boolean canUseSchema(com.fasterxml.jackson.core.FormatSchema schema) /// @@ -579,15 +542,14 @@ class JsonFactory extends jni.JObject { bool canUseSchema( jni.JObject schema, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_canUseSchema, - jni.JniCallType.booleanType, - [schema.reference.pointer]).boolean; + return _id_canUseSchema( + this, const jni.jbooleanType(), [schema.reference.pointer]); } - static final _id_getFormatName = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getFormatName", r"()Ljava/lang/String;"); + static final _id_getFormatName = _class.instanceMethodId( + r"getFormatName", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String getFormatName() /// The returned object must be released after use, by calling the [release] method. @@ -599,31 +561,27 @@ class JsonFactory extends jni.JObject { /// implementation will return null for all sub-classes ///@return Name of the format handled by parsers, generators this factory creates jni.JString getFormatName() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getFormatName, - jni.JniCallType.objectType, []).object); + return _id_getFormatName(this, const jni.JStringType(), []); } - static final _id_hasFormat = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"hasFormat", - r"(Lcom/fasterxml/jackson/core/format/InputAccessor;)Lcom/fasterxml/jackson/core/format/MatchStrength;"); + static final _id_hasFormat = _class.instanceMethodId( + r"hasFormat", + r"(Lcom/fasterxml/jackson/core/format/InputAccessor;)Lcom/fasterxml/jackson/core/format/MatchStrength;", + ); /// from: public com.fasterxml.jackson.core.format.MatchStrength hasFormat(com.fasterxml.jackson.core.format.InputAccessor acc) /// The returned object must be released after use, by calling the [release] method. jni.JObject hasFormat( jni.JObject acc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_hasFormat, - jni.JniCallType.objectType, - [acc.reference.pointer]).object); + return _id_hasFormat( + this, const jni.JObjectType(), [acc.reference.pointer]); } - static final _id_requiresCustomCodec = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"requiresCustomCodec", r"()Z"); + static final _id_requiresCustomCodec = _class.instanceMethodId( + r"requiresCustomCodec", + r"()Z", + ); /// from: public boolean requiresCustomCodec() /// @@ -637,43 +595,38 @@ class JsonFactory extends jni.JObject { /// ObjectCodec is enough ///@since 2.1 bool requiresCustomCodec() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_requiresCustomCodec, jni.JniCallType.booleanType, []).boolean; + return _id_requiresCustomCodec(this, const jni.jbooleanType(), []); } - static final _id_hasJSONFormat = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"hasJSONFormat", - r"(Lcom/fasterxml/jackson/core/format/InputAccessor;)Lcom/fasterxml/jackson/core/format/MatchStrength;"); + static final _id_hasJSONFormat = _class.instanceMethodId( + r"hasJSONFormat", + r"(Lcom/fasterxml/jackson/core/format/InputAccessor;)Lcom/fasterxml/jackson/core/format/MatchStrength;", + ); /// from: protected com.fasterxml.jackson.core.format.MatchStrength hasJSONFormat(com.fasterxml.jackson.core.format.InputAccessor acc) /// The returned object must be released after use, by calling the [release] method. jni.JObject hasJSONFormat( jni.JObject acc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_hasJSONFormat, - jni.JniCallType.objectType, - [acc.reference.pointer]).object); + return _id_hasJSONFormat( + this, const jni.JObjectType(), [acc.reference.pointer]); } - static final _id_version = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"version", - r"()Lcom/fasterxml/jackson/core/Version;"); + static final _id_version = _class.instanceMethodId( + r"version", + r"()Lcom/fasterxml/jackson/core/Version;", + ); /// from: public com.fasterxml.jackson.core.Version version() /// The returned object must be released after use, by calling the [release] method. jni.JObject version() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_version, jni.JniCallType.objectType, []).object); + return _id_version(this, const jni.JObjectType(), []); } - static final _id_configure = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"configure", - r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_configure = _class.instanceMethodId( + r"configure", + r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public final com.fasterxml.jackson.core.JsonFactory configure(com.fasterxml.jackson.core.JsonFactory.Feature f, boolean state) /// The returned object must be released after use, by calling the [release] method. @@ -688,18 +641,14 @@ class JsonFactory extends jni.JObject { JsonFactory_Feature f, bool state, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, - _id_configure, - jni.JniCallType.objectType, - [f.reference.pointer, state ? 1 : 0]).object); + return _id_configure( + this, const $JsonFactoryType(), [f.reference.pointer, state ? 1 : 0]); } - static final _id_enable = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"enable", - r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_enable = _class.instanceMethodId( + r"enable", + r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory enable(com.fasterxml.jackson.core.JsonFactory.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -712,15 +661,13 @@ class JsonFactory extends jni.JObject { JsonFactory enable( JsonFactory_Feature f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_enable, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_enable(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_disable = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"disable", - r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_disable = _class.instanceMethodId( + r"disable", + r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory disable(com.fasterxml.jackson.core.JsonFactory.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -733,15 +680,13 @@ class JsonFactory extends jni.JObject { JsonFactory disable( JsonFactory_Feature f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_disable, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_disable(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_isEnabled = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Z"); + static final _id_isEnabled = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Z", + ); /// from: public final boolean isEnabled(com.fasterxml.jackson.core.JsonFactory.Feature f) /// @@ -751,53 +696,53 @@ class JsonFactory extends jni.JObject { bool isEnabled( JsonFactory_Feature f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled(this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_getParserFeatures = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getParserFeatures", r"()I"); + static final _id_getParserFeatures = _class.instanceMethodId( + r"getParserFeatures", + r"()I", + ); /// from: public final int getParserFeatures() int getParserFeatures() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getParserFeatures, jni.JniCallType.intType, []).integer; + return _id_getParserFeatures(this, const jni.jintType(), []); } - static final _id_getGeneratorFeatures = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getGeneratorFeatures", r"()I"); + static final _id_getGeneratorFeatures = _class.instanceMethodId( + r"getGeneratorFeatures", + r"()I", + ); /// from: public final int getGeneratorFeatures() int getGeneratorFeatures() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getGeneratorFeatures, jni.JniCallType.intType, []).integer; + return _id_getGeneratorFeatures(this, const jni.jintType(), []); } - static final _id_getFormatParserFeatures = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getFormatParserFeatures", r"()I"); + static final _id_getFormatParserFeatures = _class.instanceMethodId( + r"getFormatParserFeatures", + r"()I", + ); /// from: public int getFormatParserFeatures() int getFormatParserFeatures() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getFormatParserFeatures, jni.JniCallType.intType, []).integer; + return _id_getFormatParserFeatures(this, const jni.jintType(), []); } - static final _id_getFormatGeneratorFeatures = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getFormatGeneratorFeatures", r"()I"); + static final _id_getFormatGeneratorFeatures = _class.instanceMethodId( + r"getFormatGeneratorFeatures", + r"()I", + ); /// from: public int getFormatGeneratorFeatures() int getFormatGeneratorFeatures() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getFormatGeneratorFeatures, jni.JniCallType.intType, []).integer; + return _id_getFormatGeneratorFeatures(this, const jni.jintType(), []); } - static final _id_configure1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"configure", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_configure1 = _class.instanceMethodId( + r"configure", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public final com.fasterxml.jackson.core.JsonFactory configure(com.fasterxml.jackson.core.JsonParser.Feature f, boolean state) /// The returned object must be released after use, by calling the [release] method. @@ -811,18 +756,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser_Feature f, bool state, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, - _id_configure1, - jni.JniCallType.objectType, - [f.reference.pointer, state ? 1 : 0]).object); + return _id_configure1( + this, const $JsonFactoryType(), [f.reference.pointer, state ? 1 : 0]); } - static final _id_enable1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"enable", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_enable1 = _class.instanceMethodId( + r"enable", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory enable(com.fasterxml.jackson.core.JsonParser.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -834,15 +775,13 @@ class JsonFactory extends jni.JObject { JsonFactory enable1( jsonparser_.JsonParser_Feature f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_enable1, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_enable1(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_disable1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"disable", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_disable1 = _class.instanceMethodId( + r"disable", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory disable(com.fasterxml.jackson.core.JsonParser.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -854,15 +793,13 @@ class JsonFactory extends jni.JObject { JsonFactory disable1( jsonparser_.JsonParser_Feature f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_disable1, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_disable1(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_isEnabled1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Z"); + static final _id_isEnabled1 = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Z", + ); /// from: public final boolean isEnabled(com.fasterxml.jackson.core.JsonParser.Feature f) /// @@ -872,17 +809,14 @@ class JsonFactory extends jni.JObject { bool isEnabled1( jsonparser_.JsonParser_Feature f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled1, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled1( + this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_isEnabled2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/StreamReadFeature;)Z"); + static final _id_isEnabled2 = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/StreamReadFeature;)Z", + ); /// from: public final boolean isEnabled(com.fasterxml.jackson.core.StreamReadFeature f) /// @@ -893,17 +827,14 @@ class JsonFactory extends jni.JObject { bool isEnabled2( jni.JObject f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled2, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled2( + this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_getInputDecorator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getInputDecorator", - r"()Lcom/fasterxml/jackson/core/io/InputDecorator;"); + static final _id_getInputDecorator = _class.instanceMethodId( + r"getInputDecorator", + r"()Lcom/fasterxml/jackson/core/io/InputDecorator;", + ); /// from: public com.fasterxml.jackson.core.io.InputDecorator getInputDecorator() /// The returned object must be released after use, by calling the [release] method. @@ -912,16 +843,13 @@ class JsonFactory extends jni.JObject { /// there is no default decorator). ///@return InputDecorator configured, if any jni.JObject getInputDecorator() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getInputDecorator, - jni.JniCallType.objectType, []).object); + return _id_getInputDecorator(this, const jni.JObjectType(), []); } - static final _id_setInputDecorator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setInputDecorator", - r"(Lcom/fasterxml/jackson/core/io/InputDecorator;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_setInputDecorator = _class.instanceMethodId( + r"setInputDecorator", + r"(Lcom/fasterxml/jackson/core/io/InputDecorator;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory setInputDecorator(com.fasterxml.jackson.core.io.InputDecorator d) /// The returned object must be released after use, by calling the [release] method. @@ -933,15 +861,14 @@ class JsonFactory extends jni.JObject { JsonFactory setInputDecorator( jni.JObject d, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_setInputDecorator, - jni.JniCallType.objectType, [d.reference.pointer]).object); + return _id_setInputDecorator( + this, const $JsonFactoryType(), [d.reference.pointer]); } - static final _id_configure2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"configure", - r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_configure2 = _class.instanceMethodId( + r"configure", + r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;Z)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public final com.fasterxml.jackson.core.JsonFactory configure(com.fasterxml.jackson.core.JsonGenerator.Feature f, boolean state) /// The returned object must be released after use, by calling the [release] method. @@ -955,18 +882,14 @@ class JsonFactory extends jni.JObject { jni.JObject f, bool state, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, - _id_configure2, - jni.JniCallType.objectType, - [f.reference.pointer, state ? 1 : 0]).object); + return _id_configure2( + this, const $JsonFactoryType(), [f.reference.pointer, state ? 1 : 0]); } - static final _id_enable2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"enable", - r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_enable2 = _class.instanceMethodId( + r"enable", + r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory enable(com.fasterxml.jackson.core.JsonGenerator.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -978,15 +901,13 @@ class JsonFactory extends jni.JObject { JsonFactory enable2( jni.JObject f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_enable2, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_enable2(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_disable2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"disable", - r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_disable2 = _class.instanceMethodId( + r"disable", + r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory disable(com.fasterxml.jackson.core.JsonGenerator.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -998,15 +919,13 @@ class JsonFactory extends jni.JObject { JsonFactory disable2( jni.JObject f, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_disable2, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_disable2(this, const $JsonFactoryType(), [f.reference.pointer]); } - static final _id_isEnabled3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Z"); + static final _id_isEnabled3 = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/JsonGenerator$Feature;)Z", + ); /// from: public final boolean isEnabled(com.fasterxml.jackson.core.JsonGenerator.Feature f) /// @@ -1016,17 +935,14 @@ class JsonFactory extends jni.JObject { bool isEnabled3( jni.JObject f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled3, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled3( + this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_isEnabled4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/StreamWriteFeature;)Z"); + static final _id_isEnabled4 = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/StreamWriteFeature;)Z", + ); /// from: public final boolean isEnabled(com.fasterxml.jackson.core.StreamWriteFeature f) /// @@ -1037,17 +953,14 @@ class JsonFactory extends jni.JObject { bool isEnabled4( jni.JObject f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled4, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled4( + this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_getCharacterEscapes = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getCharacterEscapes", - r"()Lcom/fasterxml/jackson/core/io/CharacterEscapes;"); + static final _id_getCharacterEscapes = _class.instanceMethodId( + r"getCharacterEscapes", + r"()Lcom/fasterxml/jackson/core/io/CharacterEscapes;", + ); /// from: public com.fasterxml.jackson.core.io.CharacterEscapes getCharacterEscapes() /// The returned object must be released after use, by calling the [release] method. @@ -1056,16 +969,13 @@ class JsonFactory extends jni.JObject { /// it creates. ///@return Configured {@code CharacterEscapes}, if any; {@code null} if none jni.JObject getCharacterEscapes() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCharacterEscapes, - jni.JniCallType.objectType, []).object); + return _id_getCharacterEscapes(this, const jni.JObjectType(), []); } - static final _id_setCharacterEscapes = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setCharacterEscapes", - r"(Lcom/fasterxml/jackson/core/io/CharacterEscapes;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_setCharacterEscapes = _class.instanceMethodId( + r"setCharacterEscapes", + r"(Lcom/fasterxml/jackson/core/io/CharacterEscapes;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory setCharacterEscapes(com.fasterxml.jackson.core.io.CharacterEscapes esc) /// The returned object must be released after use, by calling the [release] method. @@ -1077,15 +987,14 @@ class JsonFactory extends jni.JObject { JsonFactory setCharacterEscapes( jni.JObject esc, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_setCharacterEscapes, - jni.JniCallType.objectType, [esc.reference.pointer]).object); + return _id_setCharacterEscapes( + this, const $JsonFactoryType(), [esc.reference.pointer]); } - static final _id_getOutputDecorator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getOutputDecorator", - r"()Lcom/fasterxml/jackson/core/io/OutputDecorator;"); + static final _id_getOutputDecorator = _class.instanceMethodId( + r"getOutputDecorator", + r"()Lcom/fasterxml/jackson/core/io/OutputDecorator;", + ); /// from: public com.fasterxml.jackson.core.io.OutputDecorator getOutputDecorator() /// The returned object must be released after use, by calling the [release] method. @@ -1095,16 +1004,13 @@ class JsonFactory extends jni.JObject { ///@return OutputDecorator configured for generators factory creates, if any; /// {@code null} if none. jni.JObject getOutputDecorator() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getOutputDecorator, - jni.JniCallType.objectType, []).object); + return _id_getOutputDecorator(this, const jni.JObjectType(), []); } - static final _id_setOutputDecorator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setOutputDecorator", - r"(Lcom/fasterxml/jackson/core/io/OutputDecorator;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_setOutputDecorator = _class.instanceMethodId( + r"setOutputDecorator", + r"(Lcom/fasterxml/jackson/core/io/OutputDecorator;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory setOutputDecorator(com.fasterxml.jackson.core.io.OutputDecorator d) /// The returned object must be released after use, by calling the [release] method. @@ -1116,15 +1022,14 @@ class JsonFactory extends jni.JObject { JsonFactory setOutputDecorator( jni.JObject d, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_setOutputDecorator, - jni.JniCallType.objectType, [d.reference.pointer]).object); + return _id_setOutputDecorator( + this, const $JsonFactoryType(), [d.reference.pointer]); } - static final _id_setRootValueSeparator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setRootValueSeparator", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_setRootValueSeparator = _class.instanceMethodId( + r"setRootValueSeparator", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory setRootValueSeparator(java.lang.String sep) /// The returned object must be released after use, by calling the [release] method. @@ -1137,31 +1042,27 @@ class JsonFactory extends jni.JObject { JsonFactory setRootValueSeparator( jni.JString sep, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_setRootValueSeparator, - jni.JniCallType.objectType, [sep.reference.pointer]).object); + return _id_setRootValueSeparator( + this, const $JsonFactoryType(), [sep.reference.pointer]); } - static final _id_getRootValueSeparator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getRootValueSeparator", - r"()Ljava/lang/String;"); + static final _id_getRootValueSeparator = _class.instanceMethodId( + r"getRootValueSeparator", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String getRootValueSeparator() /// The returned object must be released after use, by calling the [release] method. /// /// @return Root value separator configured, if any jni.JString getRootValueSeparator() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getRootValueSeparator, - jni.JniCallType.objectType, []).object); + return _id_getRootValueSeparator(this, const jni.JStringType(), []); } - static final _id_setCodec = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setCodec", - r"(Lcom/fasterxml/jackson/core/ObjectCodec;)Lcom/fasterxml/jackson/core/JsonFactory;"); + static final _id_setCodec = _class.instanceMethodId( + r"setCodec", + r"(Lcom/fasterxml/jackson/core/ObjectCodec;)Lcom/fasterxml/jackson/core/JsonFactory;", + ); /// from: public com.fasterxml.jackson.core.JsonFactory setCodec(com.fasterxml.jackson.core.ObjectCodec oc) /// The returned object must be released after use, by calling the [release] method. @@ -1176,29 +1077,24 @@ class JsonFactory extends jni.JObject { JsonFactory setCodec( jni.JObject oc, ) { - return const $JsonFactoryType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_setCodec, - jni.JniCallType.objectType, [oc.reference.pointer]).object); + return _id_setCodec(this, const $JsonFactoryType(), [oc.reference.pointer]); } - static final _id_getCodec = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getCodec", - r"()Lcom/fasterxml/jackson/core/ObjectCodec;"); + static final _id_getCodec = _class.instanceMethodId( + r"getCodec", + r"()Lcom/fasterxml/jackson/core/ObjectCodec;", + ); /// from: public com.fasterxml.jackson.core.ObjectCodec getCodec() /// The returned object must be released after use, by calling the [release] method. jni.JObject getCodec() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCodec, - jni.JniCallType.objectType, []).object); + return _id_getCodec(this, const jni.JObjectType(), []); } - static final _id_createParser = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/io/File;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser = _class.instanceMethodId( + r"createParser", + r"(Ljava/io/File;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.io.File f) /// The returned object must be released after use, by calling the [release] method. @@ -1222,15 +1118,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser( jni.JObject f, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_createParser( + this, const jsonparser_.$JsonParserType(), [f.reference.pointer]); } - static final _id_createParser1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/net/URL;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser1 = _class.instanceMethodId( + r"createParser", + r"(Ljava/net/URL;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.net.URL url) /// The returned object must be released after use, by calling the [release] method. @@ -1252,15 +1147,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser1( jni.JObject url, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser1, - jni.JniCallType.objectType, [url.reference.pointer]).object); + return _id_createParser1( + this, const jsonparser_.$JsonParserType(), [url.reference.pointer]); } - static final _id_createParser2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/io/InputStream;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser2 = _class.instanceMethodId( + r"createParser", + r"(Ljava/io/InputStream;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.io.InputStream in) /// The returned object must be released after use, by calling the [release] method. @@ -1285,15 +1179,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser2( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser2, - jni.JniCallType.objectType, [in0.reference.pointer]).object); + return _id_createParser2( + this, const jsonparser_.$JsonParserType(), [in0.reference.pointer]); } - static final _id_createParser3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/io/Reader;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser3 = _class.instanceMethodId( + r"createParser", + r"(Ljava/io/Reader;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.io.Reader r) /// The returned object must be released after use, by calling the [release] method. @@ -1311,15 +1204,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser3( jni.JObject r, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser3, - jni.JniCallType.objectType, [r.reference.pointer]).object); + return _id_createParser3( + this, const jsonparser_.$JsonParserType(), [r.reference.pointer]); } - static final _id_createParser4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"([B)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser4 = _class.instanceMethodId( + r"createParser", + r"([B)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(byte[] data) /// The returned object must be released after use, by calling the [release] method. @@ -1330,15 +1222,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser4( jni.JArray data, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser4, - jni.JniCallType.objectType, [data.reference.pointer]).object); + return _id_createParser4( + this, const jsonparser_.$JsonParserType(), [data.reference.pointer]); } - static final _id_createParser5 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"([BII)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser5 = _class.instanceMethodId( + r"createParser", + r"([BII)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(byte[] data, int offset, int len) /// The returned object must be released after use, by calling the [release] method. @@ -1354,19 +1245,14 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, _id_createParser5, jni.JniCallType.objectType, [ - data.reference.pointer, - jni.JValueInt(offset), - jni.JValueInt(len) - ]).object); + return _id_createParser5(this, const jsonparser_.$JsonParserType(), + [data.reference.pointer, jni.JValueInt(offset), jni.JValueInt(len)]); } - static final _id_createParser6 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser6 = _class.instanceMethodId( + r"createParser", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.lang.String content) /// The returned object must be released after use, by calling the [release] method. @@ -1377,15 +1263,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser6( jni.JString content, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser6, - jni.JniCallType.objectType, [content.reference.pointer]).object); + return _id_createParser6( + this, const jsonparser_.$JsonParserType(), [content.reference.pointer]); } - static final _id_createParser7 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"([C)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser7 = _class.instanceMethodId( + r"createParser", + r"([C)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(char[] content) /// The returned object must be released after use, by calling the [release] method. @@ -1396,15 +1281,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser7( jni.JArray content, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser7, - jni.JniCallType.objectType, [content.reference.pointer]).object); + return _id_createParser7( + this, const jsonparser_.$JsonParserType(), [content.reference.pointer]); } - static final _id_createParser8 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"([CII)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser8 = _class.instanceMethodId( + r"createParser", + r"([CII)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(char[] content, int offset, int len) /// The returned object must be released after use, by calling the [release] method. @@ -1416,19 +1300,14 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, _id_createParser8, jni.JniCallType.objectType, [ - content.reference.pointer, - jni.JValueInt(offset), - jni.JValueInt(len) - ]).object); + return _id_createParser8(this, const jsonparser_.$JsonParserType(), + [content.reference.pointer, jni.JValueInt(offset), jni.JValueInt(len)]); } - static final _id_createParser9 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createParser", - r"(Ljava/io/DataInput;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createParser9 = _class.instanceMethodId( + r"createParser", + r"(Ljava/io/DataInput;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createParser(java.io.DataInput in) /// The returned object must be released after use, by calling the [release] method. @@ -1442,16 +1321,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createParser9( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createParser9, - jni.JniCallType.objectType, [in0.reference.pointer]).object); + return _id_createParser9( + this, const jsonparser_.$JsonParserType(), [in0.reference.pointer]); } - static final _id_createNonBlockingByteArrayParser = jni.Jni.accessors - .getMethodIDOf( - _class.reference.pointer, - r"createNonBlockingByteArrayParser", - r"()Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createNonBlockingByteArrayParser = _class.instanceMethodId( + r"createNonBlockingByteArrayParser", + r"()Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createNonBlockingByteArrayParser() /// The returned object must be released after use, by calling the [release] method. @@ -1470,17 +1347,14 @@ class JsonFactory extends jni.JObject { /// at this point. ///@since 2.9 jsonparser_.JsonParser createNonBlockingByteArrayParser() { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs( - reference.pointer, - _id_createNonBlockingByteArrayParser, - jni.JniCallType.objectType, []).object); + return _id_createNonBlockingByteArrayParser( + this, const jsonparser_.$JsonParserType(), []); } - static final _id_createGenerator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/OutputStream;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/OutputStream;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.OutputStream out, com.fasterxml.jackson.core.JsonEncoding enc) /// The returned object must be released after use, by calling the [release] method. @@ -1507,17 +1381,14 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator, - jni.JniCallType.objectType, - [out.reference.pointer, enc.reference.pointer]).object); + return _id_createGenerator(this, const jni.JObjectType(), + [out.reference.pointer, enc.reference.pointer]); } - static final _id_createGenerator1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/OutputStream;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator1 = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/OutputStream;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.OutputStream out) /// The returned object must be released after use, by calling the [release] method. @@ -1530,17 +1401,14 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator1( jni.JObject out, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator1, - jni.JniCallType.objectType, - [out.reference.pointer]).object); + return _id_createGenerator1( + this, const jni.JObjectType(), [out.reference.pointer]); } - static final _id_createGenerator2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/Writer;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator2 = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/Writer;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.Writer w) /// The returned object must be released after use, by calling the [release] method. @@ -1559,17 +1427,14 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator2( jni.JObject w, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator2, - jni.JniCallType.objectType, - [w.reference.pointer]).object); + return _id_createGenerator2( + this, const jni.JObjectType(), [w.reference.pointer]); } - static final _id_createGenerator3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/File;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator3 = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/File;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.File f, com.fasterxml.jackson.core.JsonEncoding enc) /// The returned object must be released after use, by calling the [release] method. @@ -1590,17 +1455,14 @@ class JsonFactory extends jni.JObject { jni.JObject f, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator3, - jni.JniCallType.objectType, - [f.reference.pointer, enc.reference.pointer]).object); + return _id_createGenerator3(this, const jni.JObjectType(), + [f.reference.pointer, enc.reference.pointer]); } - static final _id_createGenerator4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/DataOutput;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator4 = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/DataOutput;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.DataOutput out, com.fasterxml.jackson.core.JsonEncoding enc) /// The returned object must be released after use, by calling the [release] method. @@ -1612,17 +1474,14 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator4, - jni.JniCallType.objectType, - [out.reference.pointer, enc.reference.pointer]).object); + return _id_createGenerator4(this, const jni.JObjectType(), + [out.reference.pointer, enc.reference.pointer]); } - static final _id_createGenerator5 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createGenerator", - r"(Ljava/io/DataOutput;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createGenerator5 = _class.instanceMethodId( + r"createGenerator", + r"(Ljava/io/DataOutput;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createGenerator(java.io.DataOutput out) /// The returned object must be released after use, by calling the [release] method. @@ -1635,17 +1494,14 @@ class JsonFactory extends jni.JObject { jni.JObject createGenerator5( jni.JObject out, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createGenerator5, - jni.JniCallType.objectType, - [out.reference.pointer]).object); + return _id_createGenerator5( + this, const jni.JObjectType(), [out.reference.pointer]); } - static final _id_createJsonParser = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"(Ljava/io/File;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser = _class.instanceMethodId( + r"createJsonParser", + r"(Ljava/io/File;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(java.io.File f) /// The returned object must be released after use, by calling the [release] method. @@ -1671,15 +1527,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser( jni.JObject f, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser, - jni.JniCallType.objectType, [f.reference.pointer]).object); + return _id_createJsonParser( + this, const jsonparser_.$JsonParserType(), [f.reference.pointer]); } - static final _id_createJsonParser1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"(Ljava/net/URL;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser1 = _class.instanceMethodId( + r"createJsonParser", + r"(Ljava/net/URL;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(java.net.URL url) /// The returned object must be released after use, by calling the [release] method. @@ -1704,15 +1559,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser1( jni.JObject url, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser1, - jni.JniCallType.objectType, [url.reference.pointer]).object); + return _id_createJsonParser1( + this, const jsonparser_.$JsonParserType(), [url.reference.pointer]); } - static final _id_createJsonParser2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"(Ljava/io/InputStream;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser2 = _class.instanceMethodId( + r"createJsonParser", + r"(Ljava/io/InputStream;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(java.io.InputStream in) /// The returned object must be released after use, by calling the [release] method. @@ -1740,15 +1594,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser2( jni.JObject in0, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser2, - jni.JniCallType.objectType, [in0.reference.pointer]).object); + return _id_createJsonParser2( + this, const jsonparser_.$JsonParserType(), [in0.reference.pointer]); } - static final _id_createJsonParser3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"(Ljava/io/Reader;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser3 = _class.instanceMethodId( + r"createJsonParser", + r"(Ljava/io/Reader;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(java.io.Reader r) /// The returned object must be released after use, by calling the [release] method. @@ -1769,15 +1622,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser3( jni.JObject r, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser3, - jni.JniCallType.objectType, [r.reference.pointer]).object); + return _id_createJsonParser3( + this, const jsonparser_.$JsonParserType(), [r.reference.pointer]); } - static final _id_createJsonParser4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"([B)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser4 = _class.instanceMethodId( + r"createJsonParser", + r"([B)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(byte[] data) /// The returned object must be released after use, by calling the [release] method. @@ -1791,15 +1643,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser4( jni.JArray data, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser4, - jni.JniCallType.objectType, [data.reference.pointer]).object); + return _id_createJsonParser4( + this, const jsonparser_.$JsonParserType(), [data.reference.pointer]); } - static final _id_createJsonParser5 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"([BII)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser5 = _class.instanceMethodId( + r"createJsonParser", + r"([BII)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(byte[] data, int offset, int len) /// The returned object must be released after use, by calling the [release] method. @@ -1818,19 +1669,14 @@ class JsonFactory extends jni.JObject { int offset, int len, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser5, - jni.JniCallType.objectType, [ - data.reference.pointer, - jni.JValueInt(offset), - jni.JValueInt(len) - ]).object); + return _id_createJsonParser5(this, const jsonparser_.$JsonParserType(), + [data.reference.pointer, jni.JValueInt(offset), jni.JValueInt(len)]); } - static final _id_createJsonParser6 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonParser", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_createJsonParser6 = _class.instanceMethodId( + r"createJsonParser", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser createJsonParser(java.lang.String content) /// The returned object must be released after use, by calling the [release] method. @@ -1845,15 +1691,14 @@ class JsonFactory extends jni.JObject { jsonparser_.JsonParser createJsonParser6( jni.JString content, ) { - return const jsonparser_.$JsonParserType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_createJsonParser6, - jni.JniCallType.objectType, [content.reference.pointer]).object); + return _id_createJsonParser6( + this, const jsonparser_.$JsonParserType(), [content.reference.pointer]); } - static final _id_createJsonGenerator = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonGenerator", - r"(Ljava/io/OutputStream;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createJsonGenerator = _class.instanceMethodId( + r"createJsonGenerator", + r"(Ljava/io/OutputStream;Lcom/fasterxml/jackson/core/JsonEncoding;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createJsonGenerator(java.io.OutputStream out, com.fasterxml.jackson.core.JsonEncoding enc) /// The returned object must be released after use, by calling the [release] method. @@ -1882,17 +1727,14 @@ class JsonFactory extends jni.JObject { jni.JObject out, jni.JObject enc, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createJsonGenerator, - jni.JniCallType.objectType, - [out.reference.pointer, enc.reference.pointer]).object); + return _id_createJsonGenerator(this, const jni.JObjectType(), + [out.reference.pointer, enc.reference.pointer]); } - static final _id_createJsonGenerator1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonGenerator", - r"(Ljava/io/Writer;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createJsonGenerator1 = _class.instanceMethodId( + r"createJsonGenerator", + r"(Ljava/io/Writer;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createJsonGenerator(java.io.Writer out) /// The returned object must be released after use, by calling the [release] method. @@ -1913,17 +1755,14 @@ class JsonFactory extends jni.JObject { jni.JObject createJsonGenerator1( jni.JObject out, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createJsonGenerator1, - jni.JniCallType.objectType, - [out.reference.pointer]).object); + return _id_createJsonGenerator1( + this, const jni.JObjectType(), [out.reference.pointer]); } - static final _id_createJsonGenerator2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"createJsonGenerator", - r"(Ljava/io/OutputStream;)Lcom/fasterxml/jackson/core/JsonGenerator;"); + static final _id_createJsonGenerator2 = _class.instanceMethodId( + r"createJsonGenerator", + r"(Ljava/io/OutputStream;)Lcom/fasterxml/jackson/core/JsonGenerator;", + ); /// from: public com.fasterxml.jackson.core.JsonGenerator createJsonGenerator(java.io.OutputStream out) /// The returned object must be released after use, by calling the [release] method. @@ -1939,11 +1778,8 @@ class JsonFactory extends jni.JObject { jni.JObject createJsonGenerator2( jni.JObject out, ) { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_createJsonGenerator2, - jni.JniCallType.objectType, - [out.reference.pointer]).object); + return _id_createJsonGenerator2( + this, const jni.JObjectType(), [out.reference.pointer]); } } @@ -1954,7 +1790,8 @@ final class $JsonFactoryType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonFactory;"; @override - JsonFactory fromRef(jni.JObjectPtr ref) => JsonFactory.fromRef(ref); + JsonFactory fromReference(jni.JReference reference) => + JsonFactory.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart index c17de90527..b2c7ae7dd6 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonParser.dart @@ -48,45 +48,45 @@ class JsonParser_Feature extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser_Feature.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser_Feature.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonParser$Feature"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonParser$Feature"); /// The type which includes information such as the signature of this class. static const type = $JsonParser_FeatureType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/fasterxml/jackson/core/JsonParser$Feature;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/fasterxml/jackson/core/JsonParser$Feature;", + ); /// from: static public com.fasterxml.jackson.core.JsonParser.Feature[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonParser_FeatureType()).fromRef( - jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_values, jni.JniCallType.objectType, []).object); + return _id_values( + _class, const jni.JArrayType($JsonParser_FeatureType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser$Feature;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser$Feature;", + ); /// from: static public com.fasterxml.jackson.core.JsonParser.Feature valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static JsonParser_Feature valueOf( jni.JString name, ) { - return const $JsonParser_FeatureType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf( + _class, const $JsonParser_FeatureType(), [name.reference.pointer]); } - static final _id_collectDefaults = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"collectDefaults", r"()I"); + static final _id_collectDefaults = _class.staticMethodId( + r"collectDefaults", + r"()I", + ); /// from: static public int collectDefaults() /// @@ -94,40 +94,40 @@ class JsonParser_Feature extends jni.JObject { /// are enabled by default. ///@return Bit mask of all features that are enabled by default static int collectDefaults() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_collectDefaults, jni.JniCallType.intType, []).integer; + return _id_collectDefaults(_class, const jni.jintType(), []); } - static final _id_enabledByDefault = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"enabledByDefault", r"()Z"); + static final _id_enabledByDefault = _class.instanceMethodId( + r"enabledByDefault", + r"()Z", + ); /// from: public boolean enabledByDefault() bool enabledByDefault() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_enabledByDefault, jni.JniCallType.booleanType, []).boolean; + return _id_enabledByDefault(this, const jni.jbooleanType(), []); } - static final _id_enabledIn = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"enabledIn", r"(I)Z"); + static final _id_enabledIn = _class.instanceMethodId( + r"enabledIn", + r"(I)Z", + ); /// from: public boolean enabledIn(int flags) bool enabledIn( int flags, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_enabledIn, - jni.JniCallType.booleanType, - [jni.JValueInt(flags)]).boolean; + return _id_enabledIn( + this, const jni.jbooleanType(), [jni.JValueInt(flags)]); } - static final _id_getMask = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getMask", r"()I"); + static final _id_getMask = _class.instanceMethodId( + r"getMask", + r"()I", + ); /// from: public int getMask() int getMask() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getMask, jni.JniCallType.intType, []).integer; + return _id_getMask(this, const jni.jintType(), []); } } @@ -138,8 +138,8 @@ final class $JsonParser_FeatureType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonParser$Feature;"; @override - JsonParser_Feature fromRef(jni.JObjectPtr ref) => - JsonParser_Feature.fromRef(ref); + JsonParser_Feature fromReference(jni.JReference reference) => + JsonParser_Feature.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -165,41 +165,39 @@ class JsonParser_NumberType extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser_NumberType.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser_NumberType.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonParser$NumberType"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonParser$NumberType"); /// The type which includes information such as the signature of this class. static const type = $JsonParser_NumberTypeType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/fasterxml/jackson/core/JsonParser$NumberType;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/fasterxml/jackson/core/JsonParser$NumberType;", + ); /// from: static public com.fasterxml.jackson.core.JsonParser.NumberType[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonParser_NumberTypeType()).fromRef( - jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_values, jni.JniCallType.objectType, []).object); + return _id_values( + _class, const jni.JArrayType($JsonParser_NumberTypeType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser$NumberType;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonParser$NumberType;", + ); /// from: static public com.fasterxml.jackson.core.JsonParser.NumberType valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static JsonParser_NumberType valueOf( jni.JString name, ) { - return const $JsonParser_NumberTypeType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf( + _class, const $JsonParser_NumberTypeType(), [name.reference.pointer]); } } @@ -211,8 +209,8 @@ final class $JsonParser_NumberTypeType String get signature => r"Lcom/fasterxml/jackson/core/JsonParser$NumberType;"; @override - JsonParser_NumberType fromRef(jni.JObjectPtr ref) => - JsonParser_NumberType.fromRef(ref); + JsonParser_NumberType fromReference(jni.JReference reference) => + JsonParser_NumberType.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -240,18 +238,16 @@ class JsonParser extends jni.JObject { @override late final jni.JObjType $type = type; - JsonParser.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonParser.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonParser"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonParser"); /// The type which includes information such as the signature of this class. static const type = $JsonParserType(); - static final _id_DEFAULT_READ_CAPABILITIES = - jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_DEFAULT_READ_CAPABILITIES = _class.staticFieldId( r"DEFAULT_READ_CAPABILITIES", r"Lcom/fasterxml/jackson/core/util/JacksonFeatureSet;", ); @@ -264,37 +260,35 @@ class JsonParser extends jni.JObject { /// set needs to be passed). ///@since 2.12 static jni.JObject get DEFAULT_READ_CAPABILITIES => - const jni.JObjectType().fromRef(jni.Jni.accessors - .getStaticField(_class.reference.pointer, - _id_DEFAULT_READ_CAPABILITIES, jni.JniCallType.objectType) - .object); + _id_DEFAULT_READ_CAPABILITIES.get(_class, const jni.JObjectType()); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: protected void () /// The returned object must be released after use, by calling the [release] method. factory JsonParser() { - return JsonParser.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return JsonParser.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_new1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(I)V"); + static final _id_new1 = _class.constructorId( + r"(I)V", + ); /// from: protected void (int features) /// The returned object must be released after use, by calling the [release] method. factory JsonParser.new1( int features, ) { - return JsonParser.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new1, [jni.JValueInt(features)]).object); + return JsonParser.fromReference( + _id_new1(_class, referenceType, [jni.JValueInt(features)])); } - static final _id_getCodec = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getCodec", - r"()Lcom/fasterxml/jackson/core/ObjectCodec;"); + static final _id_getCodec = _class.instanceMethodId( + r"getCodec", + r"()Lcom/fasterxml/jackson/core/ObjectCodec;", + ); /// from: public abstract com.fasterxml.jackson.core.ObjectCodec getCodec() /// The returned object must be released after use, by calling the [release] method. @@ -304,16 +298,13 @@ class JsonParser extends jni.JObject { /// method (and its variants). ///@return Codec assigned to this parser, if any; {@code null} if none jni.JObject getCodec() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCodec, - jni.JniCallType.objectType, []).object); + return _id_getCodec(this, const jni.JObjectType(), []); } - static final _id_setCodec = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setCodec", - r"(Lcom/fasterxml/jackson/core/ObjectCodec;)V"); + static final _id_setCodec = _class.instanceMethodId( + r"setCodec", + r"(Lcom/fasterxml/jackson/core/ObjectCodec;)V", + ); /// from: public abstract void setCodec(com.fasterxml.jackson.core.ObjectCodec oc) /// @@ -324,12 +315,13 @@ class JsonParser extends jni.JObject { void setCodec( jni.JObject oc, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_setCodec, - jni.JniCallType.voidType, [oc.reference.pointer]).check(); + _id_setCodec(this, const jni.jvoidType(), [oc.reference.pointer]); } - static final _id_getInputSource = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getInputSource", r"()Ljava/lang/Object;"); + static final _id_getInputSource = _class.instanceMethodId( + r"getInputSource", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object getInputSource() /// The returned object must be released after use, by calling the [release] method. @@ -349,16 +341,13 @@ class JsonParser extends jni.JObject { /// "last effort", i.e. only used if no other mechanism is applicable. ///@return Input source this parser was configured with jni.JObject getInputSource() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getInputSource, - jni.JniCallType.objectType, []).object); + return _id_getInputSource(this, const jni.JObjectType(), []); } - static final _id_setRequestPayloadOnError = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setRequestPayloadOnError", - r"(Lcom/fasterxml/jackson/core/util/RequestPayload;)V"); + static final _id_setRequestPayloadOnError = _class.instanceMethodId( + r"setRequestPayloadOnError", + r"(Lcom/fasterxml/jackson/core/util/RequestPayload;)V", + ); /// from: public void setRequestPayloadOnError(com.fasterxml.jackson.core.util.RequestPayload payload) /// @@ -368,17 +357,14 @@ class JsonParser extends jni.JObject { void setRequestPayloadOnError( jni.JObject payload, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setRequestPayloadOnError, - jni.JniCallType.voidType, - [payload.reference.pointer]).check(); + _id_setRequestPayloadOnError( + this, const jni.jvoidType(), [payload.reference.pointer]); } - static final _id_setRequestPayloadOnError1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setRequestPayloadOnError", - r"([BLjava/lang/String;)V"); + static final _id_setRequestPayloadOnError1 = _class.instanceMethodId( + r"setRequestPayloadOnError", + r"([BLjava/lang/String;)V", + ); /// from: public void setRequestPayloadOnError(byte[] payload, java.lang.String charset) /// @@ -390,17 +376,14 @@ class JsonParser extends jni.JObject { jni.JArray payload, jni.JString charset, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setRequestPayloadOnError1, - jni.JniCallType.voidType, - [payload.reference.pointer, charset.reference.pointer]).check(); + _id_setRequestPayloadOnError1(this, const jni.jvoidType(), + [payload.reference.pointer, charset.reference.pointer]); } - static final _id_setRequestPayloadOnError2 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setRequestPayloadOnError", - r"(Ljava/lang/String;)V"); + static final _id_setRequestPayloadOnError2 = _class.instanceMethodId( + r"setRequestPayloadOnError", + r"(Ljava/lang/String;)V", + ); /// from: public void setRequestPayloadOnError(java.lang.String payload) /// @@ -410,17 +393,14 @@ class JsonParser extends jni.JObject { void setRequestPayloadOnError2( jni.JString payload, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setRequestPayloadOnError2, - jni.JniCallType.voidType, - [payload.reference.pointer]).check(); + _id_setRequestPayloadOnError2( + this, const jni.jvoidType(), [payload.reference.pointer]); } - static final _id_setSchema = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setSchema", - r"(Lcom/fasterxml/jackson/core/FormatSchema;)V"); + static final _id_setSchema = _class.instanceMethodId( + r"setSchema", + r"(Lcom/fasterxml/jackson/core/FormatSchema;)V", + ); /// from: public void setSchema(com.fasterxml.jackson.core.FormatSchema schema) /// @@ -437,17 +417,13 @@ class JsonParser extends jni.JObject { void setSchema( jni.JObject schema, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setSchema, - jni.JniCallType.voidType, - [schema.reference.pointer]).check(); + _id_setSchema(this, const jni.jvoidType(), [schema.reference.pointer]); } - static final _id_getSchema = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getSchema", - r"()Lcom/fasterxml/jackson/core/FormatSchema;"); + static final _id_getSchema = _class.instanceMethodId( + r"getSchema", + r"()Lcom/fasterxml/jackson/core/FormatSchema;", + ); /// from: public com.fasterxml.jackson.core.FormatSchema getSchema() /// The returned object must be released after use, by calling the [release] method. @@ -457,16 +433,13 @@ class JsonParser extends jni.JObject { ///@return Schema in use by this parser, if any; {@code null} if none ///@since 2.1 jni.JObject getSchema() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getSchema, - jni.JniCallType.objectType, []).object); + return _id_getSchema(this, const jni.JObjectType(), []); } - static final _id_canUseSchema = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"canUseSchema", - r"(Lcom/fasterxml/jackson/core/FormatSchema;)Z"); + static final _id_canUseSchema = _class.instanceMethodId( + r"canUseSchema", + r"(Lcom/fasterxml/jackson/core/FormatSchema;)Z", + ); /// from: public boolean canUseSchema(com.fasterxml.jackson.core.FormatSchema schema) /// @@ -477,15 +450,14 @@ class JsonParser extends jni.JObject { bool canUseSchema( jni.JObject schema, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_canUseSchema, - jni.JniCallType.booleanType, - [schema.reference.pointer]).boolean; + return _id_canUseSchema( + this, const jni.jbooleanType(), [schema.reference.pointer]); } - static final _id_requiresCustomCodec = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"requiresCustomCodec", r"()Z"); + static final _id_requiresCustomCodec = _class.instanceMethodId( + r"requiresCustomCodec", + r"()Z", + ); /// from: public boolean requiresCustomCodec() /// @@ -498,12 +470,13 @@ class JsonParser extends jni.JObject { /// ObjectCodec is enough ///@since 2.1 bool requiresCustomCodec() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_requiresCustomCodec, jni.JniCallType.booleanType, []).boolean; + return _id_requiresCustomCodec(this, const jni.jbooleanType(), []); } - static final _id_canParseAsync = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"canParseAsync", r"()Z"); + static final _id_canParseAsync = _class.instanceMethodId( + r"canParseAsync", + r"()Z", + ); /// from: public boolean canParseAsync() /// @@ -519,14 +492,13 @@ class JsonParser extends jni.JObject { ///@return True if this is a non-blocking ("asynchronous") parser ///@since 2.9 bool canParseAsync() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canParseAsync, jni.JniCallType.booleanType, []).boolean; + return _id_canParseAsync(this, const jni.jbooleanType(), []); } - static final _id_getNonBlockingInputFeeder = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getNonBlockingInputFeeder", - r"()Lcom/fasterxml/jackson/core/async/NonBlockingInputFeeder;"); + static final _id_getNonBlockingInputFeeder = _class.instanceMethodId( + r"getNonBlockingInputFeeder", + r"()Lcom/fasterxml/jackson/core/async/NonBlockingInputFeeder;", + ); /// from: public com.fasterxml.jackson.core.async.NonBlockingInputFeeder getNonBlockingInputFeeder() /// The returned object must be released after use, by calling the [release] method. @@ -537,16 +509,13 @@ class JsonParser extends jni.JObject { ///@return Input feeder to use with non-blocking (async) parsing ///@since 2.9 jni.JObject getNonBlockingInputFeeder() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getNonBlockingInputFeeder, - jni.JniCallType.objectType, []).object); + return _id_getNonBlockingInputFeeder(this, const jni.JObjectType(), []); } - static final _id_getReadCapabilities = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getReadCapabilities", - r"()Lcom/fasterxml/jackson/core/util/JacksonFeatureSet;"); + static final _id_getReadCapabilities = _class.instanceMethodId( + r"getReadCapabilities", + r"()Lcom/fasterxml/jackson/core/util/JacksonFeatureSet;", + ); /// from: public com.fasterxml.jackson.core.util.JacksonFeatureSet getReadCapabilities() /// The returned object must be released after use, by calling the [release] method. @@ -556,16 +525,13 @@ class JsonParser extends jni.JObject { ///@return Set of read capabilities for content to read via this parser ///@since 2.12 jni.JObject getReadCapabilities() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getReadCapabilities, - jni.JniCallType.objectType, []).object); + return _id_getReadCapabilities(this, const jni.JObjectType(), []); } - static final _id_version = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"version", - r"()Lcom/fasterxml/jackson/core/Version;"); + static final _id_version = _class.instanceMethodId( + r"version", + r"()Lcom/fasterxml/jackson/core/Version;", + ); /// from: public abstract com.fasterxml.jackson.core.Version version() /// The returned object must be released after use, by calling the [release] method. @@ -575,12 +541,13 @@ class JsonParser extends jni.JObject { ///@return Version of this generator (derived from version declared for /// {@code jackson-core} jar that contains the class jni.JObject version() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_version, jni.JniCallType.objectType, []).object); + return _id_version(this, const jni.JObjectType(), []); } - static final _id_close = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"close", r"()V"); + static final _id_close = _class.instanceMethodId( + r"close", + r"()V", + ); /// from: public abstract void close() /// @@ -599,12 +566,13 @@ class JsonParser extends jni.JObject { /// stream or reader it does own them. ///@throws IOException if there is either an underlying I/O problem void close() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_close, jni.JniCallType.voidType, []).check(); + _id_close(this, const jni.jvoidType(), []); } - static final _id_isClosed = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isClosed", r"()Z"); + static final _id_isClosed = _class.instanceMethodId( + r"isClosed", + r"()Z", + ); /// from: public abstract boolean isClosed() /// @@ -616,14 +584,13 @@ class JsonParser extends jni.JObject { /// end of input. ///@return {@code True} if this parser instance has been closed bool isClosed() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_isClosed, - jni.JniCallType.booleanType, []).boolean; + return _id_isClosed(this, const jni.jbooleanType(), []); } - static final _id_getParsingContext = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getParsingContext", - r"()Lcom/fasterxml/jackson/core/JsonStreamContext;"); + static final _id_getParsingContext = _class.instanceMethodId( + r"getParsingContext", + r"()Lcom/fasterxml/jackson/core/JsonStreamContext;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonStreamContext getParsingContext() /// The returned object must be released after use, by calling the [release] method. @@ -638,16 +605,13 @@ class JsonParser extends jni.JObject { /// input, if so desired. ///@return Stream input context (JsonStreamContext) associated with this parser jni.JObject getParsingContext() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getParsingContext, - jni.JniCallType.objectType, []).object); + return _id_getParsingContext(this, const jni.JObjectType(), []); } - static final _id_currentLocation = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"currentLocation", - r"()Lcom/fasterxml/jackson/core/JsonLocation;"); + static final _id_currentLocation = _class.instanceMethodId( + r"currentLocation", + r"()Lcom/fasterxml/jackson/core/JsonLocation;", + ); /// from: public com.fasterxml.jackson.core.JsonLocation currentLocation() /// The returned object must be released after use, by calling the [release] method. @@ -665,16 +629,13 @@ class JsonParser extends jni.JObject { ///@return Location of the last processed input unit (byte or character) ///@since 2.13 jni.JObject currentLocation() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_currentLocation, - jni.JniCallType.objectType, []).object); + return _id_currentLocation(this, const jni.JObjectType(), []); } - static final _id_currentTokenLocation = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"currentTokenLocation", - r"()Lcom/fasterxml/jackson/core/JsonLocation;"); + static final _id_currentTokenLocation = _class.instanceMethodId( + r"currentTokenLocation", + r"()Lcom/fasterxml/jackson/core/JsonLocation;", + ); /// from: public com.fasterxml.jackson.core.JsonLocation currentTokenLocation() /// The returned object must be released after use, by calling the [release] method. @@ -692,16 +653,13 @@ class JsonParser extends jni.JObject { ///@return Starting location of the token parser currently points to ///@since 2.13 (will eventually replace \#getTokenLocation) jni.JObject currentTokenLocation() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_currentTokenLocation, - jni.JniCallType.objectType, []).object); + return _id_currentTokenLocation(this, const jni.JObjectType(), []); } - static final _id_getCurrentLocation = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getCurrentLocation", - r"()Lcom/fasterxml/jackson/core/JsonLocation;"); + static final _id_getCurrentLocation = _class.instanceMethodId( + r"getCurrentLocation", + r"()Lcom/fasterxml/jackson/core/JsonLocation;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonLocation getCurrentLocation() /// The returned object must be released after use, by calling the [release] method. @@ -710,16 +668,13 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Location of the last processed input unit (byte or character) jni.JObject getCurrentLocation() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCurrentLocation, - jni.JniCallType.objectType, []).object); + return _id_getCurrentLocation(this, const jni.JObjectType(), []); } - static final _id_getTokenLocation = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getTokenLocation", - r"()Lcom/fasterxml/jackson/core/JsonLocation;"); + static final _id_getTokenLocation = _class.instanceMethodId( + r"getTokenLocation", + r"()Lcom/fasterxml/jackson/core/JsonLocation;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonLocation getTokenLocation() /// The returned object must be released after use, by calling the [release] method. @@ -728,14 +683,13 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Starting location of the token parser currently points to jni.JObject getTokenLocation() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getTokenLocation, - jni.JniCallType.objectType, []).object); + return _id_getTokenLocation(this, const jni.JObjectType(), []); } - static final _id_currentValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"currentValue", r"()Ljava/lang/Object;"); + static final _id_currentValue = _class.instanceMethodId( + r"currentValue", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object currentValue() /// The returned object must be released after use, by calling the [release] method. @@ -752,16 +706,13 @@ class JsonParser extends jni.JObject { ///@return "Current value" associated with the current input context (state) of this parser ///@since 2.13 (added as replacement for older \#getCurrentValue() jni.JObject currentValue() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_currentValue, - jni.JniCallType.objectType, []).object); + return _id_currentValue(this, const jni.JObjectType(), []); } - static final _id_assignCurrentValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"assignCurrentValue", - r"(Ljava/lang/Object;)V"); + static final _id_assignCurrentValue = _class.instanceMethodId( + r"assignCurrentValue", + r"(Ljava/lang/Object;)V", + ); /// from: public void assignCurrentValue(java.lang.Object v) /// @@ -774,15 +725,13 @@ class JsonParser extends jni.JObject { void assignCurrentValue( jni.JObject v, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_assignCurrentValue, - jni.JniCallType.voidType, - [v.reference.pointer]).check(); + _id_assignCurrentValue(this, const jni.jvoidType(), [v.reference.pointer]); } - static final _id_getCurrentValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getCurrentValue", r"()Ljava/lang/Object;"); + static final _id_getCurrentValue = _class.instanceMethodId( + r"getCurrentValue", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object getCurrentValue() /// The returned object must be released after use, by calling the [release] method. @@ -791,14 +740,13 @@ class JsonParser extends jni.JObject { /// Jackson 2.x versions (and removed from Jackson 3.0). ///@return Location of the last processed input unit (byte or character) jni.JObject getCurrentValue() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCurrentValue, - jni.JniCallType.objectType, []).object); + return _id_getCurrentValue(this, const jni.JObjectType(), []); } - static final _id_setCurrentValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"setCurrentValue", r"(Ljava/lang/Object;)V"); + static final _id_setCurrentValue = _class.instanceMethodId( + r"setCurrentValue", + r"(Ljava/lang/Object;)V", + ); /// from: public void setCurrentValue(java.lang.Object v) /// @@ -808,17 +756,13 @@ class JsonParser extends jni.JObject { void setCurrentValue( jni.JObject v, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setCurrentValue, - jni.JniCallType.voidType, - [v.reference.pointer]).check(); + _id_setCurrentValue(this, const jni.jvoidType(), [v.reference.pointer]); } - static final _id_releaseBuffered = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"releaseBuffered", - r"(Ljava/io/OutputStream;)I"); + static final _id_releaseBuffered = _class.instanceMethodId( + r"releaseBuffered", + r"(Ljava/io/OutputStream;)I", + ); /// from: public int releaseBuffered(java.io.OutputStream out) /// @@ -836,15 +780,14 @@ class JsonParser extends jni.JObject { int releaseBuffered( jni.JObject out, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_releaseBuffered, - jni.JniCallType.intType, - [out.reference.pointer]).integer; + return _id_releaseBuffered( + this, const jni.jintType(), [out.reference.pointer]); } - static final _id_releaseBuffered1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"releaseBuffered", r"(Ljava/io/Writer;)I"); + static final _id_releaseBuffered1 = _class.instanceMethodId( + r"releaseBuffered", + r"(Ljava/io/Writer;)I", + ); /// from: public int releaseBuffered(java.io.Writer w) /// @@ -863,17 +806,14 @@ class JsonParser extends jni.JObject { int releaseBuffered1( jni.JObject w, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_releaseBuffered1, - jni.JniCallType.intType, - [w.reference.pointer]).integer; + return _id_releaseBuffered1( + this, const jni.jintType(), [w.reference.pointer]); } - static final _id_enable = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"enable", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_enable = _class.instanceMethodId( + r"enable", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser enable(com.fasterxml.jackson.core.JsonParser.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -885,17 +825,13 @@ class JsonParser extends jni.JObject { JsonParser enable( JsonParser_Feature f, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_enable, - jni.JniCallType.objectType, - [f.reference.pointer]).object); + return _id_enable(this, const $JsonParserType(), [f.reference.pointer]); } - static final _id_disable = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"disable", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_disable = _class.instanceMethodId( + r"disable", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser disable(com.fasterxml.jackson.core.JsonParser.Feature f) /// The returned object must be released after use, by calling the [release] method. @@ -907,17 +843,13 @@ class JsonParser extends jni.JObject { JsonParser disable( JsonParser_Feature f, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_disable, - jni.JniCallType.objectType, - [f.reference.pointer]).object); + return _id_disable(this, const $JsonParserType(), [f.reference.pointer]); } - static final _id_configure = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"configure", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;Z)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_configure = _class.instanceMethodId( + r"configure", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;Z)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser configure(com.fasterxml.jackson.core.JsonParser.Feature f, boolean state) /// The returned object must be released after use, by calling the [release] method. @@ -931,17 +863,14 @@ class JsonParser extends jni.JObject { JsonParser_Feature f, bool state, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_configure, - jni.JniCallType.objectType, - [f.reference.pointer, state ? 1 : 0]).object); + return _id_configure( + this, const $JsonParserType(), [f.reference.pointer, state ? 1 : 0]); } - static final _id_isEnabled = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Z"); + static final _id_isEnabled = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/JsonParser$Feature;)Z", + ); /// from: public boolean isEnabled(com.fasterxml.jackson.core.JsonParser.Feature f) /// @@ -951,17 +880,13 @@ class JsonParser extends jni.JObject { bool isEnabled( JsonParser_Feature f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled(this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_isEnabled1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"isEnabled", - r"(Lcom/fasterxml/jackson/core/StreamReadFeature;)Z"); + static final _id_isEnabled1 = _class.instanceMethodId( + r"isEnabled", + r"(Lcom/fasterxml/jackson/core/StreamReadFeature;)Z", + ); /// from: public boolean isEnabled(com.fasterxml.jackson.core.StreamReadFeature f) /// @@ -972,15 +897,14 @@ class JsonParser extends jni.JObject { bool isEnabled1( jni.JObject f, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isEnabled1, - jni.JniCallType.booleanType, - [f.reference.pointer]).boolean; + return _id_isEnabled1( + this, const jni.jbooleanType(), [f.reference.pointer]); } - static final _id_getFeatureMask = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getFeatureMask", r"()I"); + static final _id_getFeatureMask = _class.instanceMethodId( + r"getFeatureMask", + r"()I", + ); /// from: public int getFeatureMask() /// @@ -988,14 +912,13 @@ class JsonParser extends jni.JObject { ///@return Bit mask that defines current states of all standard Features. ///@since 2.3 int getFeatureMask() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getFeatureMask, jni.JniCallType.intType, []).integer; + return _id_getFeatureMask(this, const jni.jintType(), []); } - static final _id_setFeatureMask = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"setFeatureMask", - r"(I)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_setFeatureMask = _class.instanceMethodId( + r"setFeatureMask", + r"(I)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser setFeatureMask(int mask) /// The returned object must be released after use, by calling the [release] method. @@ -1008,17 +931,14 @@ class JsonParser extends jni.JObject { JsonParser setFeatureMask( int mask, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setFeatureMask, - jni.JniCallType.objectType, - [jni.JValueInt(mask)]).object); + return _id_setFeatureMask( + this, const $JsonParserType(), [jni.JValueInt(mask)]); } - static final _id_overrideStdFeatures = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"overrideStdFeatures", - r"(II)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_overrideStdFeatures = _class.instanceMethodId( + r"overrideStdFeatures", + r"(II)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser overrideStdFeatures(int values, int mask) /// The returned object must be released after use, by calling the [release] method. @@ -1039,15 +959,14 @@ class JsonParser extends jni.JObject { int values, int mask, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overrideStdFeatures, - jni.JniCallType.objectType, - [jni.JValueInt(values), jni.JValueInt(mask)]).object); + return _id_overrideStdFeatures(this, const $JsonParserType(), + [jni.JValueInt(values), jni.JValueInt(mask)]); } - static final _id_getFormatFeatures = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getFormatFeatures", r"()I"); + static final _id_getFormatFeatures = _class.instanceMethodId( + r"getFormatFeatures", + r"()I", + ); /// from: public int getFormatFeatures() /// @@ -1056,14 +975,13 @@ class JsonParser extends jni.JObject { ///@return Bit mask that defines current states of all standard FormatFeatures. ///@since 2.6 int getFormatFeatures() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getFormatFeatures, jni.JniCallType.intType, []).integer; + return _id_getFormatFeatures(this, const jni.jintType(), []); } - static final _id_overrideFormatFeatures = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"overrideFormatFeatures", - r"(II)Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_overrideFormatFeatures = _class.instanceMethodId( + r"overrideFormatFeatures", + r"(II)Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public com.fasterxml.jackson.core.JsonParser overrideFormatFeatures(int values, int mask) /// The returned object must be released after use, by calling the [release] method. @@ -1082,17 +1000,14 @@ class JsonParser extends jni.JObject { int values, int mask, ) { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overrideFormatFeatures, - jni.JniCallType.objectType, - [jni.JValueInt(values), jni.JValueInt(mask)]).object); + return _id_overrideFormatFeatures(this, const $JsonParserType(), + [jni.JValueInt(values), jni.JValueInt(mask)]); } - static final _id_nextToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"nextToken", - r"()Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_nextToken = _class.instanceMethodId( + r"nextToken", + r"()Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonToken nextToken() /// The returned object must be released after use, by calling the [release] method. @@ -1106,15 +1021,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jsontoken_.JsonToken nextToken() { - return const jsontoken_.$JsonTokenType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_nextToken, - jni.JniCallType.objectType, []).object); + return _id_nextToken(this, const jsontoken_.$JsonTokenType(), []); } - static final _id_nextValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"nextValue", - r"()Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_nextValue = _class.instanceMethodId( + r"nextValue", + r"()Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonToken nextValue() /// The returned object must be released after use, by calling the [release] method. @@ -1136,15 +1049,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jsontoken_.JsonToken nextValue() { - return const jsontoken_.$JsonTokenType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_nextValue, - jni.JniCallType.objectType, []).object); + return _id_nextValue(this, const jsontoken_.$JsonTokenType(), []); } - static final _id_nextFieldName = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"nextFieldName", - r"(Lcom/fasterxml/jackson/core/SerializableString;)Z"); + static final _id_nextFieldName = _class.instanceMethodId( + r"nextFieldName", + r"(Lcom/fasterxml/jackson/core/SerializableString;)Z", + ); /// from: public boolean nextFieldName(com.fasterxml.jackson.core.SerializableString str) /// @@ -1166,15 +1077,14 @@ class JsonParser extends jni.JObject { bool nextFieldName( jni.JObject str, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_nextFieldName, - jni.JniCallType.booleanType, - [str.reference.pointer]).boolean; + return _id_nextFieldName( + this, const jni.jbooleanType(), [str.reference.pointer]); } - static final _id_nextFieldName1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"nextFieldName", r"()Ljava/lang/String;"); + static final _id_nextFieldName1 = _class.instanceMethodId( + r"nextFieldName", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String nextFieldName() /// The returned object must be released after use, by calling the [release] method. @@ -1188,14 +1098,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.5 jni.JString nextFieldName1() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_nextFieldName1, - jni.JniCallType.objectType, []).object); + return _id_nextFieldName1(this, const jni.JStringType(), []); } - static final _id_nextTextValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"nextTextValue", r"()Ljava/lang/String;"); + static final _id_nextTextValue = _class.instanceMethodId( + r"nextTextValue", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String nextTextValue() /// The returned object must be released after use, by calling the [release] method. @@ -1214,14 +1123,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString nextTextValue() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_nextTextValue, - jni.JniCallType.objectType, []).object); + return _id_nextTextValue(this, const jni.JStringType(), []); } - static final _id_nextIntValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"nextIntValue", r"(I)I"); + static final _id_nextIntValue = _class.instanceMethodId( + r"nextIntValue", + r"(I)I", + ); /// from: public int nextIntValue(int defaultValue) /// @@ -1245,15 +1153,14 @@ class JsonParser extends jni.JObject { int nextIntValue( int defaultValue, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_nextIntValue, - jni.JniCallType.intType, - [jni.JValueInt(defaultValue)]).integer; + return _id_nextIntValue( + this, const jni.jintType(), [jni.JValueInt(defaultValue)]); } - static final _id_nextLongValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"nextLongValue", r"(J)J"); + static final _id_nextLongValue = _class.instanceMethodId( + r"nextLongValue", + r"(J)J", + ); /// from: public long nextLongValue(long defaultValue) /// @@ -1277,12 +1184,13 @@ class JsonParser extends jni.JObject { int nextLongValue( int defaultValue, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_nextLongValue, jni.JniCallType.longType, [defaultValue]).long; + return _id_nextLongValue(this, const jni.jlongType(), [defaultValue]); } - static final _id_nextBooleanValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"nextBooleanValue", r"()Ljava/lang/Boolean;"); + static final _id_nextBooleanValue = _class.instanceMethodId( + r"nextBooleanValue", + r"()Ljava/lang/Boolean;", + ); /// from: public java.lang.Boolean nextBooleanValue() /// The returned object must be released after use, by calling the [release] method. @@ -1304,15 +1212,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JBoolean nextBooleanValue() { - return const jni.JBooleanType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_nextBooleanValue, - jni.JniCallType.objectType, []).object); + return _id_nextBooleanValue(this, const jni.JBooleanType(), []); } - static final _id_skipChildren = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"skipChildren", - r"()Lcom/fasterxml/jackson/core/JsonParser;"); + static final _id_skipChildren = _class.instanceMethodId( + r"skipChildren", + r"()Lcom/fasterxml/jackson/core/JsonParser;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonParser skipChildren() /// The returned object must be released after use, by calling the [release] method. @@ -1333,14 +1239,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems JsonParser skipChildren() { - return const $JsonParserType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_skipChildren, - jni.JniCallType.objectType, []).object); + return _id_skipChildren(this, const $JsonParserType(), []); } - static final _id_finishToken = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"finishToken", r"()V"); + static final _id_finishToken = _class.instanceMethodId( + r"finishToken", + r"()V", + ); /// from: public void finishToken() /// @@ -1358,14 +1263,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.8 void finishToken() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_finishToken, jni.JniCallType.voidType, []).check(); + _id_finishToken(this, const jni.jvoidType(), []); } - static final _id_currentToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"currentToken", - r"()Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_currentToken = _class.instanceMethodId( + r"currentToken", + r"()Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: public com.fasterxml.jackson.core.JsonToken currentToken() /// The returned object must be released after use, by calling the [release] method. @@ -1380,13 +1284,13 @@ class JsonParser extends jni.JObject { /// if the current token has been explicitly cleared. ///@since 2.8 jsontoken_.JsonToken currentToken() { - return const jsontoken_.$JsonTokenType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_currentToken, - jni.JniCallType.objectType, []).object); + return _id_currentToken(this, const jsontoken_.$JsonTokenType(), []); } - static final _id_currentTokenId = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"currentTokenId", r"()I"); + static final _id_currentTokenId = _class.instanceMethodId( + r"currentTokenId", + r"()I", + ); /// from: public int currentTokenId() /// @@ -1400,14 +1304,13 @@ class JsonParser extends jni.JObject { ///@since 2.8 ///@return {@code int} matching one of constants from JsonTokenId. int currentTokenId() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_currentTokenId, jni.JniCallType.intType, []).integer; + return _id_currentTokenId(this, const jni.jintType(), []); } - static final _id_getCurrentToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getCurrentToken", - r"()Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_getCurrentToken = _class.instanceMethodId( + r"getCurrentToken", + r"()Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonToken getCurrentToken() /// The returned object must be released after use, by calling the [release] method. @@ -1417,13 +1320,13 @@ class JsonParser extends jni.JObject { ///@return Type of the token this parser currently points to, /// if any: null before any tokens have been read, and jsontoken_.JsonToken getCurrentToken() { - return const jsontoken_.$JsonTokenType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getCurrentToken, - jni.JniCallType.objectType, []).object); + return _id_getCurrentToken(this, const jsontoken_.$JsonTokenType(), []); } - static final _id_getCurrentTokenId = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getCurrentTokenId", r"()I"); + static final _id_getCurrentTokenId = _class.instanceMethodId( + r"getCurrentTokenId", + r"()I", + ); /// from: public abstract int getCurrentTokenId() /// @@ -1431,12 +1334,13 @@ class JsonParser extends jni.JObject { ///@return {@code int} matching one of constants from JsonTokenId. ///@deprecated Since 2.12 use \#currentTokenId instead int getCurrentTokenId() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getCurrentTokenId, jni.JniCallType.intType, []).integer; + return _id_getCurrentTokenId(this, const jni.jintType(), []); } - static final _id_hasCurrentToken = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"hasCurrentToken", r"()Z"); + static final _id_hasCurrentToken = _class.instanceMethodId( + r"hasCurrentToken", + r"()Z", + ); /// from: public abstract boolean hasCurrentToken() /// @@ -1449,12 +1353,13 @@ class JsonParser extends jni.JObject { /// and returned null from \#nextToken, or the token /// has been consumed) bool hasCurrentToken() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_hasCurrentToken, jni.JniCallType.booleanType, []).boolean; + return _id_hasCurrentToken(this, const jni.jbooleanType(), []); } - static final _id_hasTokenId = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"hasTokenId", r"(I)Z"); + static final _id_hasTokenId = _class.instanceMethodId( + r"hasTokenId", + r"(I)Z", + ); /// from: public abstract boolean hasTokenId(int id) /// @@ -1473,17 +1378,13 @@ class JsonParser extends jni.JObject { bool hasTokenId( int id, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_hasTokenId, - jni.JniCallType.booleanType, - [jni.JValueInt(id)]).boolean; + return _id_hasTokenId(this, const jni.jbooleanType(), [jni.JValueInt(id)]); } - static final _id_hasToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"hasToken", - r"(Lcom/fasterxml/jackson/core/JsonToken;)Z"); + static final _id_hasToken = _class.instanceMethodId( + r"hasToken", + r"(Lcom/fasterxml/jackson/core/JsonToken;)Z", + ); /// from: public abstract boolean hasToken(com.fasterxml.jackson.core.JsonToken t) /// @@ -1502,12 +1403,13 @@ class JsonParser extends jni.JObject { bool hasToken( jsontoken_.JsonToken t, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_hasToken, - jni.JniCallType.booleanType, [t.reference.pointer]).boolean; + return _id_hasToken(this, const jni.jbooleanType(), [t.reference.pointer]); } - static final _id_isExpectedStartArrayToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"isExpectedStartArrayToken", r"()Z"); + static final _id_isExpectedStartArrayToken = _class.instanceMethodId( + r"isExpectedStartArrayToken", + r"()Z", + ); /// from: public boolean isExpectedStartArrayToken() /// @@ -1528,12 +1430,13 @@ class JsonParser extends jni.JObject { /// start-array marker (such JsonToken\#START_ARRAY); /// {@code false} if not bool isExpectedStartArrayToken() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isExpectedStartArrayToken, jni.JniCallType.booleanType, []).boolean; + return _id_isExpectedStartArrayToken(this, const jni.jbooleanType(), []); } - static final _id_isExpectedStartObjectToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"isExpectedStartObjectToken", r"()Z"); + static final _id_isExpectedStartObjectToken = _class.instanceMethodId( + r"isExpectedStartObjectToken", + r"()Z", + ); /// from: public boolean isExpectedStartObjectToken() /// @@ -1544,14 +1447,13 @@ class JsonParser extends jni.JObject { /// {@code false} if not ///@since 2.5 bool isExpectedStartObjectToken() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_isExpectedStartObjectToken, - jni.JniCallType.booleanType, []).boolean; + return _id_isExpectedStartObjectToken(this, const jni.jbooleanType(), []); } - static final _id_isExpectedNumberIntToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"isExpectedNumberIntToken", r"()Z"); + static final _id_isExpectedNumberIntToken = _class.instanceMethodId( + r"isExpectedNumberIntToken", + r"()Z", + ); /// from: public boolean isExpectedNumberIntToken() /// @@ -1565,12 +1467,13 @@ class JsonParser extends jni.JObject { /// {@code false} if not ///@since 2.12 bool isExpectedNumberIntToken() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isExpectedNumberIntToken, jni.JniCallType.booleanType, []).boolean; + return _id_isExpectedNumberIntToken(this, const jni.jbooleanType(), []); } - static final _id_isNaN = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isNaN", r"()Z"); + static final _id_isNaN = _class.instanceMethodId( + r"isNaN", + r"()Z", + ); /// from: public boolean isNaN() /// @@ -1587,12 +1490,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.9 bool isNaN() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_isNaN, jni.JniCallType.booleanType, []).boolean; + return _id_isNaN(this, const jni.jbooleanType(), []); } - static final _id_clearCurrentToken = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"clearCurrentToken", r"()V"); + static final _id_clearCurrentToken = _class.instanceMethodId( + r"clearCurrentToken", + r"()V", + ); /// from: public abstract void clearCurrentToken() /// @@ -1607,14 +1511,13 @@ class JsonParser extends jni.JObject { /// it has to be able to consume last token used for binding (so that /// it will not be used again). void clearCurrentToken() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_clearCurrentToken, jni.JniCallType.voidType, []).check(); + _id_clearCurrentToken(this, const jni.jvoidType(), []); } - static final _id_getLastClearedToken = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getLastClearedToken", - r"()Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_getLastClearedToken = _class.instanceMethodId( + r"getLastClearedToken", + r"()Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonToken getLastClearedToken() /// The returned object must be released after use, by calling the [release] method. @@ -1626,15 +1529,13 @@ class JsonParser extends jni.JObject { /// or if parser has been closed. ///@return Last cleared token, if any; {@code null} otherwise jsontoken_.JsonToken getLastClearedToken() { - return const jsontoken_.$JsonTokenType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getLastClearedToken, - jni.JniCallType.objectType, []).object); + return _id_getLastClearedToken(this, const jsontoken_.$JsonTokenType(), []); } - static final _id_overrideCurrentName = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"overrideCurrentName", - r"(Ljava/lang/String;)V"); + static final _id_overrideCurrentName = _class.instanceMethodId( + r"overrideCurrentName", + r"(Ljava/lang/String;)V", + ); /// from: public abstract void overrideCurrentName(java.lang.String name) /// @@ -1649,15 +1550,14 @@ class JsonParser extends jni.JObject { void overrideCurrentName( jni.JString name, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overrideCurrentName, - jni.JniCallType.voidType, - [name.reference.pointer]).check(); + _id_overrideCurrentName( + this, const jni.jvoidType(), [name.reference.pointer]); } - static final _id_getCurrentName = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getCurrentName", r"()Ljava/lang/String;"); + static final _id_getCurrentName = _class.instanceMethodId( + r"getCurrentName", + r"()Ljava/lang/String;", + ); /// from: public abstract java.lang.String getCurrentName() /// The returned object must be released after use, by calling the [release] method. @@ -1667,14 +1567,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString getCurrentName() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCurrentName, - jni.JniCallType.objectType, []).object); + return _id_getCurrentName(this, const jni.JStringType(), []); } - static final _id_currentName = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"currentName", r"()Ljava/lang/String;"); + static final _id_currentName = _class.instanceMethodId( + r"currentName", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String currentName() /// The returned object must be released after use, by calling the [release] method. @@ -1689,14 +1588,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.10 jni.JString currentName() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_currentName, - jni.JniCallType.objectType, []).object); + return _id_currentName(this, const jni.JStringType(), []); } - static final _id_getText = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getText", r"()Ljava/lang/String;"); + static final _id_getText = _class.instanceMethodId( + r"getText", + r"()Ljava/lang/String;", + ); /// from: public abstract java.lang.String getText() /// The returned object must be released after use, by calling the [release] method. @@ -1710,12 +1608,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JString getText() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getText, jni.JniCallType.objectType, []).object); + return _id_getText(this, const jni.JStringType(), []); } - static final _id_getText1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getText", r"(Ljava/io/Writer;)I"); + static final _id_getText1 = _class.instanceMethodId( + r"getText", + r"(Ljava/io/Writer;)I", + ); /// from: public int getText(java.io.Writer writer) /// @@ -1737,12 +1636,13 @@ class JsonParser extends jni.JObject { int getText1( jni.JObject writer, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_getText1, - jni.JniCallType.intType, [writer.reference.pointer]).integer; + return _id_getText1(this, const jni.jintType(), [writer.reference.pointer]); } - static final _id_getTextCharacters = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getTextCharacters", r"()[C"); + static final _id_getTextCharacters = _class.instanceMethodId( + r"getTextCharacters", + r"()[C", + ); /// from: public abstract char[] getTextCharacters() /// The returned object must be released after use, by calling the [release] method. @@ -1775,13 +1675,14 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JArray getTextCharacters() { - return const jni.JArrayType(jni.jcharType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getTextCharacters, - jni.JniCallType.objectType, []).object); + return _id_getTextCharacters( + this, const jni.JArrayType(jni.jcharType()), []); } - static final _id_getTextLength = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getTextLength", r"()I"); + static final _id_getTextLength = _class.instanceMethodId( + r"getTextLength", + r"()I", + ); /// from: public abstract int getTextLength() /// @@ -1793,12 +1694,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getTextLength() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getTextLength, jni.JniCallType.intType, []).integer; + return _id_getTextLength(this, const jni.jintType(), []); } - static final _id_getTextOffset = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getTextOffset", r"()I"); + static final _id_getTextOffset = _class.instanceMethodId( + r"getTextOffset", + r"()I", + ); /// from: public abstract int getTextOffset() /// @@ -1810,12 +1712,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getTextOffset() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getTextOffset, jni.JniCallType.intType, []).integer; + return _id_getTextOffset(this, const jni.jintType(), []); } - static final _id_hasTextCharacters = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"hasTextCharacters", r"()Z"); + static final _id_hasTextCharacters = _class.instanceMethodId( + r"hasTextCharacters", + r"()Z", + ); /// from: public abstract boolean hasTextCharacters() /// @@ -1834,12 +1737,13 @@ class JsonParser extends jni.JObject { /// be efficiently returned via \#getTextCharacters; false /// means that it may or may not exist bool hasTextCharacters() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_hasTextCharacters, jni.JniCallType.booleanType, []).boolean; + return _id_hasTextCharacters(this, const jni.jbooleanType(), []); } - static final _id_getNumberValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getNumberValue", r"()Ljava/lang/Number;"); + static final _id_getNumberValue = _class.instanceMethodId( + r"getNumberValue", + r"()Ljava/lang/Number;", + ); /// from: public abstract java.lang.Number getNumberValue() /// The returned object must be released after use, by calling the [release] method. @@ -1855,16 +1759,13 @@ class JsonParser extends jni.JObject { /// (invalid format for numbers); plain IOException if underlying /// content read fails (possible if values are extracted lazily) jni.JNumber getNumberValue() { - return const jni.JNumberType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getNumberValue, - jni.JniCallType.objectType, []).object); + return _id_getNumberValue(this, const jni.JNumberType(), []); } - static final _id_getNumberValueExact = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getNumberValueExact", - r"()Ljava/lang/Number;"); + static final _id_getNumberValueExact = _class.instanceMethodId( + r"getNumberValueExact", + r"()Ljava/lang/Number;", + ); /// from: public java.lang.Number getNumberValueExact() /// The returned object must be released after use, by calling the [release] method. @@ -1884,16 +1785,13 @@ class JsonParser extends jni.JObject { /// content read fails (possible if values are extracted lazily) ///@since 2.12 jni.JNumber getNumberValueExact() { - return const jni.JNumberType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getNumberValueExact, - jni.JniCallType.objectType, []).object); + return _id_getNumberValueExact(this, const jni.JNumberType(), []); } - static final _id_getNumberType = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getNumberType", - r"()Lcom/fasterxml/jackson/core/JsonParser$NumberType;"); + static final _id_getNumberType = _class.instanceMethodId( + r"getNumberType", + r"()Lcom/fasterxml/jackson/core/JsonParser$NumberType;", + ); /// from: public abstract com.fasterxml.jackson.core.JsonParser.NumberType getNumberType() /// The returned object must be released after use, by calling the [release] method. @@ -1906,13 +1804,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems JsonParser_NumberType getNumberType() { - return const $JsonParser_NumberTypeType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getNumberType, - jni.JniCallType.objectType, []).object); + return _id_getNumberType(this, const $JsonParser_NumberTypeType(), []); } - static final _id_getByteValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getByteValue", r"()B"); + static final _id_getByteValue = _class.instanceMethodId( + r"getByteValue", + r"()B", + ); /// from: public byte getByteValue() /// @@ -1938,12 +1836,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getByteValue() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getByteValue, jni.JniCallType.byteType, []).byte; + return _id_getByteValue(this, const jni.jbyteType(), []); } - static final _id_getShortValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getShortValue", r"()S"); + static final _id_getShortValue = _class.instanceMethodId( + r"getShortValue", + r"()S", + ); /// from: public short getShortValue() /// @@ -1963,12 +1862,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getShortValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getShortValue, jni.JniCallType.shortType, []).short; + return _id_getShortValue(this, const jni.jshortType(), []); } - static final _id_getIntValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getIntValue", r"()I"); + static final _id_getIntValue = _class.instanceMethodId( + r"getIntValue", + r"()I", + ); /// from: public abstract int getIntValue() /// @@ -1988,12 +1888,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getIntValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getIntValue, jni.JniCallType.intType, []).integer; + return _id_getIntValue(this, const jni.jintType(), []); } - static final _id_getLongValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getLongValue", r"()J"); + static final _id_getLongValue = _class.instanceMethodId( + r"getLongValue", + r"()J", + ); /// from: public abstract long getLongValue() /// @@ -2013,14 +1914,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getLongValue() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getLongValue, jni.JniCallType.longType, []).long; + return _id_getLongValue(this, const jni.jlongType(), []); } - static final _id_getBigIntegerValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getBigIntegerValue", - r"()Ljava/math/BigInteger;"); + static final _id_getBigIntegerValue = _class.instanceMethodId( + r"getBigIntegerValue", + r"()Ljava/math/BigInteger;", + ); /// from: public abstract java.math.BigInteger getBigIntegerValue() /// The returned object must be released after use, by calling the [release] method. @@ -2037,14 +1937,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getBigIntegerValue() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getBigIntegerValue, - jni.JniCallType.objectType, []).object); + return _id_getBigIntegerValue(this, const jni.JObjectType(), []); } - static final _id_getFloatValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getFloatValue", r"()F"); + static final _id_getFloatValue = _class.instanceMethodId( + r"getFloatValue", + r"()F", + ); /// from: public abstract float getFloatValue() /// @@ -2064,12 +1963,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems double getFloatValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getFloatValue, jni.JniCallType.floatType, []).float; + return _id_getFloatValue(this, const jni.jfloatType(), []); } - static final _id_getDoubleValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getDoubleValue", r"()D"); + static final _id_getDoubleValue = _class.instanceMethodId( + r"getDoubleValue", + r"()D", + ); /// from: public abstract double getDoubleValue() /// @@ -2089,14 +1989,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems double getDoubleValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getDoubleValue, jni.JniCallType.doubleType, []).doubleFloat; + return _id_getDoubleValue(this, const jni.jdoubleType(), []); } - static final _id_getDecimalValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getDecimalValue", - r"()Ljava/math/BigDecimal;"); + static final _id_getDecimalValue = _class.instanceMethodId( + r"getDecimalValue", + r"()Ljava/math/BigDecimal;", + ); /// from: public abstract java.math.BigDecimal getDecimalValue() /// The returned object must be released after use, by calling the [release] method. @@ -2110,14 +2009,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getDecimalValue() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getDecimalValue, - jni.JniCallType.objectType, []).object); + return _id_getDecimalValue(this, const jni.JObjectType(), []); } - static final _id_getBooleanValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getBooleanValue", r"()Z"); + static final _id_getBooleanValue = _class.instanceMethodId( + r"getBooleanValue", + r"()Z", + ); /// from: public boolean getBooleanValue() /// @@ -2133,12 +2031,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems bool getBooleanValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getBooleanValue, jni.JniCallType.booleanType, []).boolean; + return _id_getBooleanValue(this, const jni.jbooleanType(), []); } - static final _id_getEmbeddedObject = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getEmbeddedObject", r"()Ljava/lang/Object;"); + static final _id_getEmbeddedObject = _class.instanceMethodId( + r"getEmbeddedObject", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object getEmbeddedObject() /// The returned object must be released after use, by calling the [release] method. @@ -2158,16 +2057,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JObject getEmbeddedObject() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getEmbeddedObject, - jni.JniCallType.objectType, []).object); + return _id_getEmbeddedObject(this, const jni.JObjectType(), []); } - static final _id_getBinaryValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getBinaryValue", - r"(Lcom/fasterxml/jackson/core/Base64Variant;)[B"); + static final _id_getBinaryValue = _class.instanceMethodId( + r"getBinaryValue", + r"(Lcom/fasterxml/jackson/core/Base64Variant;)[B", + ); /// from: public abstract byte[] getBinaryValue(com.fasterxml.jackson.core.Base64Variant bv) /// The returned object must be released after use, by calling the [release] method. @@ -2195,13 +2091,14 @@ class JsonParser extends jni.JObject { jni.JArray getBinaryValue( jni.JObject bv, ) { - return const jni.JArrayType(jni.jbyteType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getBinaryValue, - jni.JniCallType.objectType, [bv.reference.pointer]).object); + return _id_getBinaryValue( + this, const jni.JArrayType(jni.jbyteType()), [bv.reference.pointer]); } - static final _id_getBinaryValue1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getBinaryValue", r"()[B"); + static final _id_getBinaryValue1 = _class.instanceMethodId( + r"getBinaryValue", + r"()[B", + ); /// from: public byte[] getBinaryValue() /// The returned object must be released after use, by calling the [release] method. @@ -2213,15 +2110,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems jni.JArray getBinaryValue1() { - return const jni.JArrayType(jni.jbyteType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getBinaryValue1, - jni.JniCallType.objectType, []).object); + return _id_getBinaryValue1(this, const jni.JArrayType(jni.jbyteType()), []); } - static final _id_readBinaryValue = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readBinaryValue", - r"(Ljava/io/OutputStream;)I"); + static final _id_readBinaryValue = _class.instanceMethodId( + r"readBinaryValue", + r"(Ljava/io/OutputStream;)I", + ); /// from: public int readBinaryValue(java.io.OutputStream out) /// @@ -2239,17 +2134,14 @@ class JsonParser extends jni.JObject { int readBinaryValue( jni.JObject out, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readBinaryValue, - jni.JniCallType.intType, - [out.reference.pointer]).integer; + return _id_readBinaryValue( + this, const jni.jintType(), [out.reference.pointer]); } - static final _id_readBinaryValue1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readBinaryValue", - r"(Lcom/fasterxml/jackson/core/Base64Variant;Ljava/io/OutputStream;)I"); + static final _id_readBinaryValue1 = _class.instanceMethodId( + r"readBinaryValue", + r"(Lcom/fasterxml/jackson/core/Base64Variant;Ljava/io/OutputStream;)I", + ); /// from: public int readBinaryValue(com.fasterxml.jackson.core.Base64Variant bv, java.io.OutputStream out) /// @@ -2265,15 +2157,14 @@ class JsonParser extends jni.JObject { jni.JObject bv, jni.JObject out, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readBinaryValue1, - jni.JniCallType.intType, - [bv.reference.pointer, out.reference.pointer]).integer; + return _id_readBinaryValue1(this, const jni.jintType(), + [bv.reference.pointer, out.reference.pointer]); } - static final _id_getValueAsInt = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsInt", r"()I"); + static final _id_getValueAsInt = _class.instanceMethodId( + r"getValueAsInt", + r"()I", + ); /// from: public int getValueAsInt() /// @@ -2291,12 +2182,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getValueAsInt() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsInt, jni.JniCallType.intType, []).integer; + return _id_getValueAsInt(this, const jni.jintType(), []); } - static final _id_getValueAsInt1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsInt", r"(I)I"); + static final _id_getValueAsInt1 = _class.instanceMethodId( + r"getValueAsInt", + r"(I)I", + ); /// from: public int getValueAsInt(int def) /// @@ -2316,15 +2208,13 @@ class JsonParser extends jni.JObject { int getValueAsInt1( int def, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getValueAsInt1, - jni.JniCallType.intType, - [jni.JValueInt(def)]).integer; + return _id_getValueAsInt1(this, const jni.jintType(), [jni.JValueInt(def)]); } - static final _id_getValueAsLong = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsLong", r"()J"); + static final _id_getValueAsLong = _class.instanceMethodId( + r"getValueAsLong", + r"()J", + ); /// from: public long getValueAsLong() /// @@ -2342,12 +2232,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems int getValueAsLong() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsLong, jni.JniCallType.longType, []).long; + return _id_getValueAsLong(this, const jni.jlongType(), []); } - static final _id_getValueAsLong1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsLong", r"(J)J"); + static final _id_getValueAsLong1 = _class.instanceMethodId( + r"getValueAsLong", + r"(J)J", + ); /// from: public long getValueAsLong(long def) /// @@ -2367,12 +2258,13 @@ class JsonParser extends jni.JObject { int getValueAsLong1( int def, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsLong1, jni.JniCallType.longType, [def]).long; + return _id_getValueAsLong1(this, const jni.jlongType(), [def]); } - static final _id_getValueAsDouble = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsDouble", r"()D"); + static final _id_getValueAsDouble = _class.instanceMethodId( + r"getValueAsDouble", + r"()D", + ); /// from: public double getValueAsDouble() /// @@ -2390,12 +2282,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems double getValueAsDouble() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsDouble, jni.JniCallType.doubleType, []).doubleFloat; + return _id_getValueAsDouble(this, const jni.jdoubleType(), []); } - static final _id_getValueAsDouble1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsDouble", r"(D)D"); + static final _id_getValueAsDouble1 = _class.instanceMethodId( + r"getValueAsDouble", + r"(D)D", + ); /// from: public double getValueAsDouble(double def) /// @@ -2415,12 +2308,13 @@ class JsonParser extends jni.JObject { double getValueAsDouble1( double def, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsDouble1, jni.JniCallType.doubleType, [def]).doubleFloat; + return _id_getValueAsDouble1(this, const jni.jdoubleType(), [def]); } - static final _id_getValueAsBoolean = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsBoolean", r"()Z"); + static final _id_getValueAsBoolean = _class.instanceMethodId( + r"getValueAsBoolean", + r"()Z", + ); /// from: public boolean getValueAsBoolean() /// @@ -2438,12 +2332,13 @@ class JsonParser extends jni.JObject { ///@throws IOException for low-level read issues, or /// JsonParseException for decoding problems bool getValueAsBoolean() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getValueAsBoolean, jni.JniCallType.booleanType, []).boolean; + return _id_getValueAsBoolean(this, const jni.jbooleanType(), []); } - static final _id_getValueAsBoolean1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValueAsBoolean", r"(Z)Z"); + static final _id_getValueAsBoolean1 = _class.instanceMethodId( + r"getValueAsBoolean", + r"(Z)Z", + ); /// from: public boolean getValueAsBoolean(boolean def) /// @@ -2463,15 +2358,14 @@ class JsonParser extends jni.JObject { bool getValueAsBoolean1( bool def, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getValueAsBoolean1, - jni.JniCallType.booleanType, - [def ? 1 : 0]).boolean; + return _id_getValueAsBoolean1( + this, const jni.jbooleanType(), [def ? 1 : 0]); } - static final _id_getValueAsString = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getValueAsString", r"()Ljava/lang/String;"); + static final _id_getValueAsString = _class.instanceMethodId( + r"getValueAsString", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String getValueAsString() /// The returned object must be released after use, by calling the [release] method. @@ -2488,16 +2382,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.1 jni.JString getValueAsString() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getValueAsString, - jni.JniCallType.objectType, []).object); + return _id_getValueAsString(this, const jni.JStringType(), []); } - static final _id_getValueAsString1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getValueAsString", - r"(Ljava/lang/String;)Ljava/lang/String;"); + static final _id_getValueAsString1 = _class.instanceMethodId( + r"getValueAsString", + r"(Ljava/lang/String;)Ljava/lang/String;", + ); /// from: public abstract java.lang.String getValueAsString(java.lang.String def) /// The returned object must be released after use, by calling the [release] method. @@ -2517,15 +2408,14 @@ class JsonParser extends jni.JObject { jni.JString getValueAsString1( jni.JString def, ) { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getValueAsString1, - jni.JniCallType.objectType, - [def.reference.pointer]).object); + return _id_getValueAsString1( + this, const jni.JStringType(), [def.reference.pointer]); } - static final _id_canReadObjectId = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"canReadObjectId", r"()Z"); + static final _id_canReadObjectId = _class.instanceMethodId( + r"canReadObjectId", + r"()Z", + ); /// from: public boolean canReadObjectId() /// @@ -2541,12 +2431,13 @@ class JsonParser extends jni.JObject { /// {@code false} if not ///@since 2.3 bool canReadObjectId() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canReadObjectId, jni.JniCallType.booleanType, []).boolean; + return _id_canReadObjectId(this, const jni.jbooleanType(), []); } - static final _id_canReadTypeId = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"canReadTypeId", r"()Z"); + static final _id_canReadTypeId = _class.instanceMethodId( + r"canReadTypeId", + r"()Z", + ); /// from: public boolean canReadTypeId() /// @@ -2562,12 +2453,13 @@ class JsonParser extends jni.JObject { /// {@code false} if not ///@since 2.3 bool canReadTypeId() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_canReadTypeId, jni.JniCallType.booleanType, []).boolean; + return _id_canReadTypeId(this, const jni.jbooleanType(), []); } - static final _id_getObjectId = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getObjectId", r"()Ljava/lang/Object;"); + static final _id_getObjectId = _class.instanceMethodId( + r"getObjectId", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object getObjectId() /// The returned object must be released after use, by calling the [release] method. @@ -2586,14 +2478,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.3 jni.JObject getObjectId() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getObjectId, - jni.JniCallType.objectType, []).object); + return _id_getObjectId(this, const jni.JObjectType(), []); } - static final _id_getTypeId = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getTypeId", r"()Ljava/lang/Object;"); + static final _id_getTypeId = _class.instanceMethodId( + r"getTypeId", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object getTypeId() /// The returned object must be released after use, by calling the [release] method. @@ -2612,16 +2503,13 @@ class JsonParser extends jni.JObject { /// JsonParseException for decoding problems ///@since 2.3 jni.JObject getTypeId() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getTypeId, - jni.JniCallType.objectType, []).object); + return _id_getTypeId(this, const jni.JObjectType(), []); } - static final _id_readValueAs = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readValueAs", - r"(Ljava/lang/Class;)Ljava/lang/Object;"); + static final _id_readValueAs = _class.instanceMethodId( + r"readValueAs", + r"(Ljava/lang/Class;)Ljava/lang/Object;", + ); /// from: public T readValueAs(java.lang.Class valueType) /// The returned object must be released after use, by calling the [release] method. @@ -2655,17 +2543,13 @@ class JsonParser extends jni.JObject { jni.JObject valueType, { required jni.JObjType<$T> T, }) { - return T.fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readValueAs, - jni.JniCallType.objectType, - [valueType.reference.pointer]).object); + return _id_readValueAs(this, T, [valueType.reference.pointer]); } - static final _id_readValueAs1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readValueAs", - r"(Lcom/fasterxml/jackson/core/type/TypeReference;)Ljava/lang/Object;"); + static final _id_readValueAs1 = _class.instanceMethodId( + r"readValueAs", + r"(Lcom/fasterxml/jackson/core/type/TypeReference;)Ljava/lang/Object;", + ); /// from: public T readValueAs(com.fasterxml.jackson.core.type.TypeReference valueTypeRef) /// The returned object must be released after use, by calling the [release] method. @@ -2696,17 +2580,13 @@ class JsonParser extends jni.JObject { jni.JObject valueTypeRef, { required jni.JObjType<$T> T, }) { - return T.fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readValueAs1, - jni.JniCallType.objectType, - [valueTypeRef.reference.pointer]).object); + return _id_readValueAs1(this, T, [valueTypeRef.reference.pointer]); } - static final _id_readValuesAs = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readValuesAs", - r"(Ljava/lang/Class;)Ljava/util/Iterator;"); + static final _id_readValuesAs = _class.instanceMethodId( + r"readValuesAs", + r"(Ljava/lang/Class;)Ljava/util/Iterator;", + ); /// from: public java.util.Iterator readValuesAs(java.lang.Class valueType) /// The returned object must be released after use, by calling the [release] method. @@ -2723,17 +2603,14 @@ class JsonParser extends jni.JObject { jni.JObject valueType, { required jni.JObjType<$T> T, }) { - return jni.JIteratorType(T).fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readValuesAs, - jni.JniCallType.objectType, - [valueType.reference.pointer]).object); + return _id_readValuesAs( + this, jni.JIteratorType(T), [valueType.reference.pointer]); } - static final _id_readValuesAs1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readValuesAs", - r"(Lcom/fasterxml/jackson/core/type/TypeReference;)Ljava/util/Iterator;"); + static final _id_readValuesAs1 = _class.instanceMethodId( + r"readValuesAs", + r"(Lcom/fasterxml/jackson/core/type/TypeReference;)Ljava/util/Iterator;", + ); /// from: public java.util.Iterator readValuesAs(com.fasterxml.jackson.core.type.TypeReference valueTypeRef) /// The returned object must be released after use, by calling the [release] method. @@ -2750,17 +2627,14 @@ class JsonParser extends jni.JObject { jni.JObject valueTypeRef, { required jni.JObjType<$T> T, }) { - return jni.JIteratorType(T).fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_readValuesAs1, - jni.JniCallType.objectType, - [valueTypeRef.reference.pointer]).object); + return _id_readValuesAs1( + this, jni.JIteratorType(T), [valueTypeRef.reference.pointer]); } - static final _id_readValueAsTree = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"readValueAsTree", - r"()Lcom/fasterxml/jackson/core/TreeNode;"); + static final _id_readValueAsTree = _class.instanceMethodId( + r"readValueAsTree", + r"()Lcom/fasterxml/jackson/core/TreeNode;", + ); /// from: public T readValueAsTree() /// The returned object must be released after use, by calling the [release] method. @@ -2777,8 +2651,7 @@ class JsonParser extends jni.JObject { $T readValueAsTree<$T extends jni.JObject>({ required jni.JObjType<$T> T, }) { - return T.fromRef(jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_readValueAsTree, jni.JniCallType.objectType, []).object); + return _id_readValueAsTree(this, T, []); } } @@ -2789,7 +2662,8 @@ final class $JsonParserType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonParser;"; @override - JsonParser fromRef(jni.JObjectPtr ref) => JsonParser.fromRef(ref); + JsonParser fromReference(jni.JReference reference) => + JsonParser.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart index 565278c274..49bd43b31a 100644 --- a/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart +++ b/pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/JsonToken.dart @@ -47,100 +47,100 @@ class JsonToken extends jni.JObject { @override late final jni.JObjType $type = type; - JsonToken.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonToken.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/fasterxml/jackson/core/JsonToken"); + jni.JClass.forName(r"com/fasterxml/jackson/core/JsonToken"); /// The type which includes information such as the signature of this class. static const type = $JsonTokenType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: static public com.fasterxml.jackson.core.JsonToken[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonTokenType()).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_values, - jni.JniCallType.objectType, []).object); + return _id_values(_class, const jni.JArrayType($JsonTokenType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonToken;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/fasterxml/jackson/core/JsonToken;", + ); /// from: static public com.fasterxml.jackson.core.JsonToken valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static JsonToken valueOf( jni.JString name, ) { - return const $JsonTokenType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf( + _class, const $JsonTokenType(), [name.reference.pointer]); } - static final _id_id = - jni.Jni.accessors.getMethodIDOf(_class.reference.pointer, r"id", r"()I"); + static final _id_id = _class.instanceMethodId( + r"id", + r"()I", + ); /// from: public final int id() int id() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_id, jni.JniCallType.intType, []).integer; + return _id_id(this, const jni.jintType(), []); } - static final _id_asString = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"asString", r"()Ljava/lang/String;"); + static final _id_asString = _class.instanceMethodId( + r"asString", + r"()Ljava/lang/String;", + ); /// from: public final java.lang.String asString() /// The returned object must be released after use, by calling the [release] method. jni.JString asString() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_asString, - jni.JniCallType.objectType, []).object); + return _id_asString(this, const jni.JStringType(), []); } - static final _id_asCharArray = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"asCharArray", r"()[C"); + static final _id_asCharArray = _class.instanceMethodId( + r"asCharArray", + r"()[C", + ); /// from: public final char[] asCharArray() /// The returned object must be released after use, by calling the [release] method. jni.JArray asCharArray() { - return const jni.JArrayType(jni.jcharType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_asCharArray, - jni.JniCallType.objectType, []).object); + return _id_asCharArray(this, const jni.JArrayType(jni.jcharType()), []); } - static final _id_asByteArray = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"asByteArray", r"()[B"); + static final _id_asByteArray = _class.instanceMethodId( + r"asByteArray", + r"()[B", + ); /// from: public final byte[] asByteArray() /// The returned object must be released after use, by calling the [release] method. jni.JArray asByteArray() { - return const jni.JArrayType(jni.jbyteType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_asByteArray, - jni.JniCallType.objectType, []).object); + return _id_asByteArray(this, const jni.JArrayType(jni.jbyteType()), []); } - static final _id_isNumeric = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isNumeric", r"()Z"); + static final _id_isNumeric = _class.instanceMethodId( + r"isNumeric", + r"()Z", + ); /// from: public final boolean isNumeric() /// /// @return {@code True} if this token is {@code VALUE_NUMBER_INT} or {@code VALUE_NUMBER_FLOAT}, /// {@code false} otherwise bool isNumeric() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isNumeric, jni.JniCallType.booleanType, []).boolean; + return _id_isNumeric(this, const jni.jbooleanType(), []); } - static final _id_isStructStart = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isStructStart", r"()Z"); + static final _id_isStructStart = _class.instanceMethodId( + r"isStructStart", + r"()Z", + ); /// from: public final boolean isStructStart() /// @@ -152,12 +152,13 @@ class JsonToken extends jni.JObject { /// {@code false} otherwise ///@since 2.3 bool isStructStart() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isStructStart, jni.JniCallType.booleanType, []).boolean; + return _id_isStructStart(this, const jni.jbooleanType(), []); } - static final _id_isStructEnd = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isStructEnd", r"()Z"); + static final _id_isStructEnd = _class.instanceMethodId( + r"isStructEnd", + r"()Z", + ); /// from: public final boolean isStructEnd() /// @@ -169,12 +170,13 @@ class JsonToken extends jni.JObject { /// {@code false} otherwise ///@since 2.3 bool isStructEnd() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isStructEnd, jni.JniCallType.booleanType, []).boolean; + return _id_isStructEnd(this, const jni.jbooleanType(), []); } - static final _id_isScalarValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isScalarValue", r"()Z"); + static final _id_isScalarValue = _class.instanceMethodId( + r"isScalarValue", + r"()Z", + ); /// from: public final boolean isScalarValue() /// @@ -185,20 +187,20 @@ class JsonToken extends jni.JObject { ///@return {@code True} if this token is a scalar value token (one of /// {@code VALUE_xxx} tokens), {@code false} otherwise bool isScalarValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isScalarValue, jni.JniCallType.booleanType, []).boolean; + return _id_isScalarValue(this, const jni.jbooleanType(), []); } - static final _id_isBoolean = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"isBoolean", r"()Z"); + static final _id_isBoolean = _class.instanceMethodId( + r"isBoolean", + r"()Z", + ); /// from: public final boolean isBoolean() /// /// @return {@code True} if this token is {@code VALUE_TRUE} or {@code VALUE_FALSE}, /// {@code false} otherwise bool isBoolean() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_isBoolean, jni.JniCallType.booleanType, []).boolean; + return _id_isBoolean(this, const jni.jbooleanType(), []); } } @@ -209,7 +211,8 @@ final class $JsonTokenType extends jni.JObjType { String get signature => r"Lcom/fasterxml/jackson/core/JsonToken;"; @override - JsonToken fromRef(jni.JObjectPtr ref) => JsonToken.fromRef(ref); + JsonToken fromReference(jni.JReference reference) => + JsonToken.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/kotlin_test/c_based/dart_bindings/kotlin.dart b/pkgs/jnigen/test/kotlin_test/c_based/dart_bindings/kotlin.dart index 68af05b3f5..ad796f826c 100644 --- a/pkgs/jnigen/test/kotlin_test/c_based/dart_bindings/kotlin.dart +++ b/pkgs/jnigen/test/kotlin_test/c_based/dart_bindings/kotlin.dart @@ -36,9 +36,9 @@ class SuspendFun extends jni.JObject { @override late final jni.JObjType $type = type; - SuspendFun.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + SuspendFun.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $SuspendFunType(); @@ -49,7 +49,7 @@ class SuspendFun extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory SuspendFun() { - return SuspendFun.fromRef(_new0().object); + return SuspendFun.fromReference(_new0().reference); } static final _sayHello = jniLookup< @@ -64,15 +64,16 @@ class SuspendFun extends jni.JObject { /// The returned object must be released after use, by calling the [release] method. Future sayHello() async { final $p = ReceivePort(); - final $c = - jni.JObject.fromRef(ProtectedJniExtensions.newPortContinuation($p)); - _sayHello(reference.pointer, $c.reference.pointer).object; - final $o = jni.JObjectPtr.fromAddress(await $p.first); - final $k = const jni.JStringType().getClass().reference.pointer; - if (!jni.Jni.env.IsInstanceOf($o, $k)) { + final $c = jni.JObject.fromReference( + ProtectedJniExtensions.newPortContinuation($p)); + _sayHello(reference.pointer, $c.reference.pointer) + .object(const jni.JObjectType()); + final $o = jni.JGlobalReference(jni.JObjectPtr.fromAddress(await $p.first)); + final $k = const jni.JStringType().jClass.reference.pointer; + if (!jni.Jni.env.IsInstanceOf($o.pointer, $k)) { throw "Failed"; } - return const jni.JStringType().fromRef($o); + return const jni.JStringType().fromReference($o); } static final _sayHello1 = jniLookup< @@ -91,17 +92,17 @@ class SuspendFun extends jni.JObject { jni.JString string, ) async { final $p = ReceivePort(); - final $c = - jni.JObject.fromRef(ProtectedJniExtensions.newPortContinuation($p)); + final $c = jni.JObject.fromReference( + ProtectedJniExtensions.newPortContinuation($p)); _sayHello1( reference.pointer, string.reference.pointer, $c.reference.pointer) - .object; - final $o = jni.JObjectPtr.fromAddress(await $p.first); - final $k = const jni.JStringType().getClass().reference.pointer; - if (!jni.Jni.env.IsInstanceOf($o, $k)) { + .object(const jni.JObjectType()); + final $o = jni.JGlobalReference(jni.JObjectPtr.fromAddress(await $p.first)); + final $k = const jni.JStringType().jClass.reference.pointer; + if (!jni.Jni.env.IsInstanceOf($o.pointer, $k)) { throw "Failed"; } - return const jni.JStringType().fromRef($o); + return const jni.JStringType().fromReference($o); } } @@ -112,7 +113,8 @@ final class $SuspendFunType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/SuspendFun;"; @override - SuspendFun fromRef(jni.JObjectPtr ref) => SuspendFun.fromRef(ref); + SuspendFun fromReference(jni.JReference reference) => + SuspendFun.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/kotlin_test/dart_only/dart_bindings/kotlin.dart b/pkgs/jnigen/test/kotlin_test/dart_only/dart_bindings/kotlin.dart index b6c85ae2ad..22f9d82e2b 100644 --- a/pkgs/jnigen/test/kotlin_test/dart_only/dart_bindings/kotlin.dart +++ b/pkgs/jnigen/test/kotlin_test/dart_only/dart_bindings/kotlin.dart @@ -31,50 +31,49 @@ class SuspendFun extends jni.JObject { @override late final jni.JObjType $type = type; - SuspendFun.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + SuspendFun.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/SuspendFun"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/SuspendFun"); /// The type which includes information such as the signature of this class. static const type = $SuspendFunType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory SuspendFun() { - return SuspendFun.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return SuspendFun.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_sayHello = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"sayHello", - r"(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;"); + static final _id_sayHello = _class.instanceMethodId( + r"sayHello", + r"(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", + ); /// from: public final java.lang.Object sayHello(kotlin.coroutines.Continuation continuation) /// The returned object must be released after use, by calling the [release] method. Future sayHello() async { final $p = ReceivePort(); - final $c = - jni.JObject.fromRef(ProtectedJniExtensions.newPortContinuation($p)); - jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_sayHello, - jni.JniCallType.objectType, [$c.reference.pointer]).object; - final $o = jni.JObjectPtr.fromAddress(await $p.first); - final $k = const jni.JStringType().getClass().reference.pointer; - if (!jni.Jni.env.IsInstanceOf($o, $k)) { + final $c = jni.JObject.fromReference( + ProtectedJniExtensions.newPortContinuation($p)); + _id_sayHello(this, const jni.JObjectType(), [$c.reference.pointer]); + final $o = jni.JGlobalReference(jni.JObjectPtr.fromAddress(await $p.first)); + final $k = const jni.JStringType().jClass.reference.pointer; + if (!jni.Jni.env.IsInstanceOf($o.pointer, $k)) { throw "Failed"; } - return const jni.JStringType().fromRef($o); + return const jni.JStringType().fromReference($o); } - static final _id_sayHello1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"sayHello", - r"(Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;"); + static final _id_sayHello1 = _class.instanceMethodId( + r"sayHello", + r"(Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", + ); /// from: public final java.lang.Object sayHello(java.lang.String string, kotlin.coroutines.Continuation continuation) /// The returned object must be released after use, by calling the [release] method. @@ -82,19 +81,16 @@ class SuspendFun extends jni.JObject { jni.JString string, ) async { final $p = ReceivePort(); - final $c = - jni.JObject.fromRef(ProtectedJniExtensions.newPortContinuation($p)); - jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_sayHello1, - jni.JniCallType.objectType, - [string.reference.pointer, $c.reference.pointer]).object; - final $o = jni.JObjectPtr.fromAddress(await $p.first); - final $k = const jni.JStringType().getClass().reference.pointer; - if (!jni.Jni.env.IsInstanceOf($o, $k)) { + final $c = jni.JObject.fromReference( + ProtectedJniExtensions.newPortContinuation($p)); + _id_sayHello1(this, const jni.JObjectType(), + [string.reference.pointer, $c.reference.pointer]); + final $o = jni.JGlobalReference(jni.JObjectPtr.fromAddress(await $p.first)); + final $k = const jni.JStringType().jClass.reference.pointer; + if (!jni.Jni.env.IsInstanceOf($o.pointer, $k)) { throw "Failed"; } - return const jni.JStringType().fromRef($o); + return const jni.JStringType().fromReference($o); } } @@ -105,7 +101,8 @@ final class $SuspendFunType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/SuspendFun;"; @override - SuspendFun fromRef(jni.JObjectPtr ref) => SuspendFun.fromRef(ref); + SuspendFun fromReference(jni.JReference reference) => + SuspendFun.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); diff --git a/pkgs/jnigen/test/simple_package_test/c_based/dart_bindings/simple_package.dart b/pkgs/jnigen/test/simple_package_test/c_based/dart_bindings/simple_package.dart index e7f7b9c41d..9f25399cdd 100644 --- a/pkgs/jnigen/test/simple_package_test/c_based/dart_bindings/simple_package.dart +++ b/pkgs/jnigen/test/simple_package_test/c_based/dart_bindings/simple_package.dart @@ -36,9 +36,9 @@ class Example_Nested_NestedTwice extends jni.JObject { @override late final jni.JObjType $type = type; - Example_Nested_NestedTwice.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_Nested_NestedTwice.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Example_Nested_NestedTwiceType(); @@ -65,7 +65,7 @@ class Example_Nested_NestedTwice extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example_Nested_NestedTwice() { - return Example_Nested_NestedTwice.fromRef(_new0().object); + return Example_Nested_NestedTwice.fromReference(_new0().reference); } } @@ -78,8 +78,8 @@ final class $Example_Nested_NestedTwiceType r"Lcom/github/dart_lang/jnigen/simple_package/Example$Nested$NestedTwice;"; @override - Example_Nested_NestedTwice fromRef(jni.JObjectPtr ref) => - Example_Nested_NestedTwice.fromRef(ref); + Example_Nested_NestedTwice fromReference(jni.JReference reference) => + Example_Nested_NestedTwice.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -102,9 +102,9 @@ class Example_Nested extends jni.JObject { @override late final jni.JObjType $type = type; - Example_Nested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_Nested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Example_NestedType(); @@ -118,7 +118,7 @@ class Example_Nested extends jni.JObject { factory Example_Nested( bool value, ) { - return Example_Nested.fromRef(_new0(value ? 1 : 0).object); + return Example_Nested.fromReference(_new0(value ? 1 : 0).reference); } static final _usesAnonymousInnerClass = jniLookup< @@ -129,7 +129,7 @@ class Example_Nested extends jni.JObject { /// from: public void usesAnonymousInnerClass() void usesAnonymousInnerClass() { - return _usesAnonymousInnerClass(reference.pointer).check(); + _usesAnonymousInnerClass(reference.pointer).check(); } static final _getValue = jniLookup< @@ -153,7 +153,7 @@ class Example_Nested extends jni.JObject { void setValue( bool value, ) { - return _setValue(reference.pointer, value ? 1 : 0).check(); + _setValue(reference.pointer, value ? 1 : 0).check(); } } @@ -165,7 +165,8 @@ final class $Example_NestedType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;"; @override - Example_Nested fromRef(jni.JObjectPtr ref) => Example_Nested.fromRef(ref); + Example_Nested fromReference(jni.JReference reference) => + Example_Nested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -188,9 +189,9 @@ class Example_NonStaticNested extends jni.JObject { @override late final jni.JObjType $type = type; - Example_NonStaticNested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_NonStaticNested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Example_NonStaticNestedType(); @@ -227,8 +228,8 @@ class Example_NonStaticNested extends jni.JObject { factory Example_NonStaticNested( Example $parent, ) { - return Example_NonStaticNested.fromRef( - _new0($parent.reference.pointer).object); + return Example_NonStaticNested.fromReference( + _new0($parent.reference.pointer).reference); } } @@ -241,8 +242,8 @@ final class $Example_NonStaticNestedType r"Lcom/github/dart_lang/jnigen/simple_package/Example$NonStaticNested;"; @override - Example_NonStaticNested fromRef(jni.JObjectPtr ref) => - Example_NonStaticNested.fromRef(ref); + Example_NonStaticNested fromReference(jni.JReference reference) => + Example_NonStaticNested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -265,9 +266,9 @@ class Example extends jni.JObject { @override late final jni.JObjType $type = type; - Example.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $ExampleType(); @@ -291,7 +292,7 @@ class Example extends jni.JObject { /// from: static public final java.lang.String SEMICOLON_STRING /// The returned object must be released after use, by calling the [release] method. static jni.JString get SEMICOLON_STRING => - const jni.JStringType().fromRef(_get_SEMICOLON_STRING().object); + _get_SEMICOLON_STRING().object(const jni.JStringType()); static final _get_unusedRandom = jniLookup>( @@ -301,7 +302,7 @@ class Example extends jni.JObject { /// from: static public final java.util.Random unusedRandom /// The returned object must be released after use, by calling the [release] method. static jni.JObject get unusedRandom => - const jni.JObjectType().fromRef(_get_unusedRandom().object); + _get_unusedRandom().object(const jni.JObjectType()); static final _get_protectedField = jniLookup< ffi.NativeFunction< @@ -322,8 +323,8 @@ class Example extends jni.JObject { /// from: protected java.util.Random protectedField /// The returned object must be released after use, by calling the [release] method. - jni.JObject get protectedField => const jni.JObjectType() - .fromRef(_get_protectedField(reference.pointer).object); + jni.JObject get protectedField => + _get_protectedField(reference.pointer).object(const jni.JObjectType()); /// from: protected java.util.Random protectedField /// The returned object must be released after use, by calling the [release] method. @@ -367,7 +368,7 @@ class Example extends jni.JObject { /// from: static public java.lang.String getName() /// The returned object must be released after use, by calling the [release] method. static jni.JString getName() { - return const jni.JStringType().fromRef(_getName().object); + return _getName().object(const jni.JStringType()); } static final _getNestedInstance = @@ -378,7 +379,7 @@ class Example extends jni.JObject { /// from: static public com.github.dart_lang.jnigen.simple_package.Example.Nested getNestedInstance() /// The returned object must be released after use, by calling the [release] method. static Example_Nested getNestedInstance() { - return const $Example_NestedType().fromRef(_getNestedInstance().object); + return _getNestedInstance().object(const $Example_NestedType()); } static final _setAmount = @@ -390,7 +391,7 @@ class Example extends jni.JObject { static void setAmount( int newAmount, ) { - return _setAmount(newAmount).check(); + _setAmount(newAmount).check(); } static final _setName = jniLookup< @@ -403,7 +404,7 @@ class Example extends jni.JObject { static void setName( jni.JString newName, ) { - return _setName(newName.reference.pointer).check(); + _setName(newName.reference.pointer).check(); } static final _setNestedInstance = jniLookup< @@ -416,7 +417,7 @@ class Example extends jni.JObject { static void setNestedInstance( Example_Nested newNested, ) { - return _setNestedInstance(newNested.reference.pointer).check(); + _setNestedInstance(newNested.reference.pointer).check(); } static final _max4 = jniLookup< @@ -477,7 +478,7 @@ class Example extends jni.JObject { void setNumber( int number, ) { - return _setNumber(reference.pointer, number).check(); + _setNumber(reference.pointer, number).check(); } static final _getIsUp = jniLookup< @@ -501,7 +502,7 @@ class Example extends jni.JObject { void setUp( bool isUp, ) { - return _setUp(reference.pointer, isUp ? 1 : 0).check(); + _setUp(reference.pointer, isUp ? 1 : 0).check(); } static final _getCodename = jniLookup< @@ -513,8 +514,7 @@ class Example extends jni.JObject { /// from: public java.lang.String getCodename() /// The returned object must be released after use, by calling the [release] method. jni.JString getCodename() { - return const jni.JStringType() - .fromRef(_getCodename(reference.pointer).object); + return _getCodename(reference.pointer).object(const jni.JStringType()); } static final _setCodename = jniLookup< @@ -529,7 +529,7 @@ class Example extends jni.JObject { void setCodename( jni.JString codename, ) { - return _setCodename(reference.pointer, codename.reference.pointer).check(); + _setCodename(reference.pointer, codename.reference.pointer).check(); } static final _getRandom = jniLookup< @@ -541,8 +541,7 @@ class Example extends jni.JObject { /// from: public java.util.Random getRandom() /// The returned object must be released after use, by calling the [release] method. jni.JObject getRandom() { - return const jni.JObjectType() - .fromRef(_getRandom(reference.pointer).object); + return _getRandom(reference.pointer).object(const jni.JObjectType()); } static final _setRandom = jniLookup< @@ -557,7 +556,7 @@ class Example extends jni.JObject { void setRandom( jni.JObject random, ) { - return _setRandom(reference.pointer, random.reference.pointer).check(); + _setRandom(reference.pointer, random.reference.pointer).check(); } static final _getRandomLong = jniLookup< @@ -631,9 +630,8 @@ class Example extends jni.JObject { jni.JString getRandomNumericString( jni.JObject random, ) { - return const jni.JStringType().fromRef( - _getRandomNumericString(reference.pointer, random.reference.pointer) - .object); + return _getRandomNumericString(reference.pointer, random.reference.pointer) + .object(const jni.JStringType()); } static final _protectedMethod = jniLookup< @@ -651,7 +649,7 @@ class Example extends jni.JObject { jni.JString a, jni.JString b, ) { - return _protectedMethod( + _protectedMethod( reference.pointer, a.reference.pointer, b.reference.pointer) .check(); } @@ -664,7 +662,7 @@ class Example extends jni.JObject { /// from: public final void finalMethod() void finalMethod() { - return _finalMethod(reference.pointer).check(); + _finalMethod(reference.pointer).check(); } static final _getList = jniLookup< @@ -676,8 +674,8 @@ class Example extends jni.JObject { /// from: public java.util.List getList() /// The returned object must be released after use, by calling the [release] method. jni.JList getList() { - return const jni.JListType(jni.JStringType()) - .fromRef(_getList(reference.pointer).object); + return _getList(reference.pointer) + .object(const jni.JListType(jni.JStringType())); } static final _joinStrings = jniLookup< @@ -698,9 +696,9 @@ class Example extends jni.JObject { jni.JList values, jni.JString delim, ) { - return const jni.JStringType().fromRef(_joinStrings(reference.pointer, - values.reference.pointer, delim.reference.pointer) - .object); + return _joinStrings(reference.pointer, values.reference.pointer, + delim.reference.pointer) + .object(const jni.JStringType()); } static final _methodWithSeveralParams = jniLookup< @@ -737,7 +735,7 @@ class Example extends jni.JObject { (lt.$type as jni.JListType).E, t.$type, ]) as jni.JObjType<$T>; - return _methodWithSeveralParams( + _methodWithSeveralParams( reference.pointer, ch, s.reference.pointer, @@ -755,7 +753,7 @@ class Example extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example() { - return Example.fromRef(_new0().object); + return Example.fromReference(_new0().reference); } static final _new1 = @@ -768,7 +766,7 @@ class Example extends jni.JObject { factory Example.new1( int number, ) { - return Example.fromRef(_new1(number).object); + return Example.fromReference(_new1(number).reference); } static final _new2 = jniLookup< @@ -782,7 +780,7 @@ class Example extends jni.JObject { int number, bool isUp, ) { - return Example.fromRef(_new2(number, isUp ? 1 : 0).object); + return Example.fromReference(_new2(number, isUp ? 1 : 0).reference); } static final _new3 = jniLookup< @@ -798,8 +796,8 @@ class Example extends jni.JObject { bool isUp, jni.JString codename, ) { - return Example.fromRef( - _new3(number, isUp ? 1 : 0, codename.reference.pointer).object); + return Example.fromReference( + _new3(number, isUp ? 1 : 0, codename.reference.pointer).reference); } static final _new4 = jniLookup< @@ -821,7 +819,7 @@ class Example extends jni.JObject { int g, int h, ) { - return Example.fromRef(_new4(a, b, c, d, e, f, g, h).object); + return Example.fromReference(_new4(a, b, c, d, e, f, g, h).reference); } static final _whichExample = jniLookup< @@ -855,7 +853,7 @@ class Example extends jni.JObject { /// from: static public int[] getArr() /// The returned object must be released after use, by calling the [release] method. static jni.JArray getArr() { - return const jni.JArrayType(jni.jintType()).fromRef(_getArr().object); + return _getArr().object(const jni.JArrayType(jni.jintType())); } static final _addAll = jniLookup< @@ -879,7 +877,7 @@ class Example extends jni.JObject { /// from: public com.github.dart_lang.jnigen.simple_package.Example getSelf() /// The returned object must be released after use, by calling the [release] method. Example getSelf() { - return const $ExampleType().fromRef(_getSelf(reference.pointer).object); + return _getSelf(reference.pointer).object(const $ExampleType()); } static final _throwException = @@ -889,7 +887,7 @@ class Example extends jni.JObject { /// from: static public void throwException() static void throwException() { - return _throwException().check(); + _throwException().check(); } static final _overloaded = jniLookup< @@ -900,7 +898,7 @@ class Example extends jni.JObject { /// from: public void overloaded() void overloaded() { - return _overloaded(reference.pointer).check(); + _overloaded(reference.pointer).check(); } static final _overloaded1 = jniLookup< @@ -916,7 +914,7 @@ class Example extends jni.JObject { int a, jni.JString b, ) { - return _overloaded1(reference.pointer, a, b.reference.pointer).check(); + _overloaded1(reference.pointer, a, b.reference.pointer).check(); } static final _overloaded2 = jniLookup< @@ -929,7 +927,7 @@ class Example extends jni.JObject { void overloaded2( int a, ) { - return _overloaded2(reference.pointer, a).check(); + _overloaded2(reference.pointer, a).check(); } static final _overloaded3 = jniLookup< @@ -947,8 +945,7 @@ class Example extends jni.JObject { jni.JList a, jni.JString b, ) { - return _overloaded3( - reference.pointer, a.reference.pointer, b.reference.pointer) + _overloaded3(reference.pointer, a.reference.pointer, b.reference.pointer) .check(); } @@ -964,7 +961,7 @@ class Example extends jni.JObject { void overloaded4( jni.JList a, ) { - return _overloaded4(reference.pointer, a.reference.pointer).check(); + _overloaded4(reference.pointer, a.reference.pointer).check(); } } @@ -976,7 +973,8 @@ final class $ExampleType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Example;"; @override - Example fromRef(jni.JObjectPtr ref) => Example.fromRef(ref); + Example fromReference(jni.JReference reference) => + Example.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -998,9 +996,9 @@ class C2 extends jni.JObject { @override late final jni.JObjType $type = type; - C2.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + C2.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $C2Type(); @@ -1027,7 +1025,7 @@ class C2 extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory C2() { - return C2.fromRef(_new0().object); + return C2.fromReference(_new0().reference); } } @@ -1038,7 +1036,7 @@ final class $C2Type extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/pkg2/C2;"; @override - C2 fromRef(jni.JObjectPtr ref) => C2.fromRef(ref); + C2 fromReference(jni.JReference reference) => C2.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1060,9 +1058,9 @@ class Example1 extends jni.JObject { @override late final jni.JObjType $type = type; - Example1.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example1.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Example1Type(); @@ -1073,7 +1071,7 @@ class Example1 extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example1() { - return Example1.fromRef(_new0().object); + return Example1.fromReference(_new0().reference); } static final _whichExample = jniLookup< @@ -1095,7 +1093,8 @@ final class $Example1Type extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/pkg2/Example;"; @override - Example1 fromRef(jni.JObjectPtr ref) => Example1.fromRef(ref); + Example1 fromReference(jni.JReference reference) => + Example1.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1123,12 +1122,12 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, final jni.JObjType<$S> S; final jni.JObjType<$U> U; - GrandParent_Parent_Child.fromRef( + GrandParent_Parent_Child.fromReference( this.T, this.S, this.U, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GrandParent_Parent_ChildType<$T, $S, $U> type<$T extends jni.JObject, @@ -1164,8 +1163,7 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, /// from: public T grandParentValue /// The returned object must be released after use, by calling the [release] method. - $T get grandParentValue => - T.fromRef(_get_grandParentValue(reference.pointer).object); + $T get grandParentValue => _get_grandParentValue(reference.pointer).object(T); /// from: public T grandParentValue /// The returned object must be released after use, by calling the [release] method. @@ -1192,7 +1190,7 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - $S get parentValue => S.fromRef(_get_parentValue(reference.pointer).object); + $S get parentValue => _get_parentValue(reference.pointer).object(S); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. @@ -1219,7 +1217,7 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, /// from: public U value /// The returned object must be released after use, by calling the [release] method. - $U get value => U.fromRef(_get_value(reference.pointer).object); + $U get value => _get_value(reference.pointer).object(U); /// from: public U value /// The returned object must be released after use, by calling the [release] method. @@ -1252,8 +1250,8 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, U ??= jni.lowestCommonSuperType([ newValue.$type, ]) as jni.JObjType<$U>; - return GrandParent_Parent_Child.fromRef(T, S, U, - _new0($parent.reference.pointer, newValue.reference.pointer).object); + return GrandParent_Parent_Child.fromReference(T, S, U, + _new0($parent.reference.pointer, newValue.reference.pointer).reference); } } @@ -1275,8 +1273,9 @@ final class $GrandParent_Parent_ChildType<$T extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent$Child;"; @override - GrandParent_Parent_Child<$T, $S, $U> fromRef(jni.JObjectPtr ref) => - GrandParent_Parent_Child.fromRef(T, S, U, ref); + GrandParent_Parent_Child<$T, $S, $U> fromReference( + jni.JReference reference) => + GrandParent_Parent_Child.fromReference(T, S, U, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1306,11 +1305,11 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> final jni.JObjType<$T> T; final jni.JObjType<$S> S; - GrandParent_Parent.fromRef( + GrandParent_Parent.fromReference( this.T, this.S, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GrandParent_ParentType<$T, $S> @@ -1344,7 +1343,7 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> /// from: public T parentValue /// The returned object must be released after use, by calling the [release] method. - $T get parentValue => T.fromRef(_get_parentValue(reference.pointer).object); + $T get parentValue => _get_parentValue(reference.pointer).object(T); /// from: public T parentValue /// The returned object must be released after use, by calling the [release] method. @@ -1370,7 +1369,7 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> /// from: public S value /// The returned object must be released after use, by calling the [release] method. - $S get value => S.fromRef(_get_value(reference.pointer).object); + $S get value => _get_value(reference.pointer).object(S); /// from: public S value /// The returned object must be released after use, by calling the [release] method. @@ -1399,8 +1398,8 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> S ??= jni.lowestCommonSuperType([ newValue.$type, ]) as jni.JObjType<$S>; - return GrandParent_Parent.fromRef(T, S, - _new0($parent.reference.pointer, newValue.reference.pointer).object); + return GrandParent_Parent.fromReference(T, S, + _new0($parent.reference.pointer, newValue.reference.pointer).reference); } } @@ -1419,8 +1418,8 @@ final class $GrandParent_ParentType<$T extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;"; @override - GrandParent_Parent<$T, $S> fromRef(jni.JObjectPtr ref) => - GrandParent_Parent.fromRef(T, S, ref); + GrandParent_Parent<$T, $S> fromReference(jni.JReference reference) => + GrandParent_Parent.fromReference(T, S, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1450,11 +1449,11 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, final jni.JObjType<$S> S; final jni.JObjType<$U> U; - GrandParent_StaticParent_Child.fromRef( + GrandParent_StaticParent_Child.fromReference( this.S, this.U, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GrandParent_StaticParent_ChildType<$S, $U> @@ -1488,7 +1487,7 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - $S get parentValue => S.fromRef(_get_parentValue(reference.pointer).object); + $S get parentValue => _get_parentValue(reference.pointer).object(S); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. @@ -1515,7 +1514,7 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, /// from: public U value /// The returned object must be released after use, by calling the [release] method. - $U get value => U.fromRef(_get_value(reference.pointer).object); + $U get value => _get_value(reference.pointer).object(U); /// from: public U value /// The returned object must be released after use, by calling the [release] method. @@ -1547,12 +1546,12 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, U ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$U>; - return GrandParent_StaticParent_Child.fromRef( + return GrandParent_StaticParent_Child.fromReference( S, U, _new0($parent.reference.pointer, parentValue.reference.pointer, value.reference.pointer) - .object); + .reference); } } @@ -1572,8 +1571,9 @@ final class $GrandParent_StaticParent_ChildType<$S extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent$Child;"; @override - GrandParent_StaticParent_Child<$S, $U> fromRef(jni.JObjectPtr ref) => - GrandParent_StaticParent_Child.fromRef(S, U, ref); + GrandParent_StaticParent_Child<$S, $U> fromReference( + jni.JReference reference) => + GrandParent_StaticParent_Child.fromReference(S, U, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1600,10 +1600,10 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { final jni.JObjType<$S> S; - GrandParent_StaticParent.fromRef( + GrandParent_StaticParent.fromReference( this.S, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GrandParent_StaticParentType<$S> type<$S extends jni.JObject>( @@ -1634,7 +1634,7 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { /// from: public S value /// The returned object must be released after use, by calling the [release] method. - $S get value => S.fromRef(_get_value(reference.pointer).object); + $S get value => _get_value(reference.pointer).object(S); /// from: public S value /// The returned object must be released after use, by calling the [release] method. @@ -1656,8 +1656,8 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$S>; - return GrandParent_StaticParent.fromRef( - S, _new0(value.reference.pointer).object); + return GrandParent_StaticParent.fromReference( + S, _new0(value.reference.pointer).reference); } } @@ -1674,8 +1674,8 @@ final class $GrandParent_StaticParentType<$S extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;"; @override - GrandParent_StaticParent<$S> fromRef(jni.JObjectPtr ref) => - GrandParent_StaticParent.fromRef(S, ref); + GrandParent_StaticParent<$S> fromReference(jni.JReference reference) => + GrandParent_StaticParent.fromReference(S, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1701,10 +1701,10 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - GrandParent.fromRef( + GrandParent.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GrandParentType<$T> type<$T extends jni.JObject>( @@ -1734,7 +1734,7 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { /// from: public T value /// The returned object must be released after use, by calling the [release] method. - $T get value => T.fromRef(_get_value(reference.pointer).object); + $T get value => _get_value(reference.pointer).object(T); /// from: public T value /// The returned object must be released after use, by calling the [release] method. @@ -1756,7 +1756,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$T>; - return GrandParent.fromRef(T, _new0(value.reference.pointer).object); + return GrandParent.fromReference( + T, _new0(value.reference.pointer).reference); } static final _stringParent = jniLookup< @@ -1768,8 +1769,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { /// from: public com.github.dart_lang.jnigen.generics.GrandParent.Parent stringParent() /// The returned object must be released after use, by calling the [release] method. GrandParent_Parent stringParent() { - return const $GrandParent_ParentType(jni.JObjectType(), jni.JStringType()) - .fromRef(_stringParent(reference.pointer).object); + return _stringParent(reference.pointer).object( + const $GrandParent_ParentType(jni.JObjectType(), jni.JStringType())); } static final _varParent = jniLookup< @@ -1789,8 +1790,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ nestedValue.$type, ]) as jni.JObjType<$S>; - return $GrandParent_ParentType(const jni.JObjectType(), S).fromRef( - _varParent(reference.pointer, nestedValue.reference.pointer).object); + return _varParent(reference.pointer, nestedValue.reference.pointer) + .object($GrandParent_ParentType(const jni.JObjectType(), S)); } static final _stringStaticParent = @@ -1801,8 +1802,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { /// from: static public com.github.dart_lang.jnigen.generics.GrandParent.StaticParent stringStaticParent() /// The returned object must be released after use, by calling the [release] method. static GrandParent_StaticParent stringStaticParent() { - return const $GrandParent_StaticParentType(jni.JStringType()) - .fromRef(_stringStaticParent().object); + return _stringStaticParent() + .object(const $GrandParent_StaticParentType(jni.JStringType())); } static final _varStaticParent = jniLookup< @@ -1820,8 +1821,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$S>; - return $GrandParent_StaticParentType(S) - .fromRef(_varStaticParent(value.reference.pointer).object); + return _varStaticParent(value.reference.pointer) + .object($GrandParent_StaticParentType(S)); } static final _staticParentWithSameType = jniLookup< @@ -1833,8 +1834,8 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { /// from: public com.github.dart_lang.jnigen.generics.GrandParent.StaticParent staticParentWithSameType() /// The returned object must be released after use, by calling the [release] method. GrandParent_StaticParent<$T> staticParentWithSameType() { - return $GrandParent_StaticParentType(T) - .fromRef(_staticParentWithSameType(reference.pointer).object); + return _staticParentWithSameType(reference.pointer) + .object($GrandParent_StaticParentType(T)); } } @@ -1850,7 +1851,8 @@ final class $GrandParentType<$T extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/GrandParent;"; @override - GrandParent<$T> fromRef(jni.JObjectPtr ref) => GrandParent.fromRef(T, ref); + GrandParent<$T> fromReference(jni.JReference reference) => + GrandParent.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1878,11 +1880,11 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> final jni.JObjType<$K> K; final jni.JObjType<$V> V; - MyMap_MyEntry.fromRef( + MyMap_MyEntry.fromReference( this.K, this.V, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $MyMap_MyEntryType<$K, $V> @@ -1915,7 +1917,7 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> /// from: public K key /// The returned object must be released after use, by calling the [release] method. - $K get key => K.fromRef(_get_key(reference.pointer).object); + $K get key => _get_key(reference.pointer).object(K); /// from: public K key /// The returned object must be released after use, by calling the [release] method. @@ -1941,7 +1943,7 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> /// from: public V value /// The returned object must be released after use, by calling the [release] method. - $V get value => V.fromRef(_get_value(reference.pointer).object); + $V get value => _get_value(reference.pointer).object(V); /// from: public V value /// The returned object must be released after use, by calling the [release] method. @@ -1975,12 +1977,12 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> value.$type, ($parent.$type as $MyMapType).V, ]) as jni.JObjType<$V>; - return MyMap_MyEntry.fromRef( + return MyMap_MyEntry.fromReference( K, V, _new0($parent.reference.pointer, key.reference.pointer, value.reference.pointer) - .object); + .reference); } } @@ -1999,8 +2001,8 @@ final class $MyMap_MyEntryType<$K extends jni.JObject, $V extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/MyMap$MyEntry;"; @override - MyMap_MyEntry<$K, $V> fromRef(jni.JObjectPtr ref) => - MyMap_MyEntry.fromRef(K, V, ref); + MyMap_MyEntry<$K, $V> fromReference(jni.JReference reference) => + MyMap_MyEntry.fromReference(K, V, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2029,11 +2031,11 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> final jni.JObjType<$K> K; final jni.JObjType<$V> V; - MyMap.fromRef( + MyMap.fromReference( this.K, this.V, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $MyMapType<$K, $V> @@ -2057,7 +2059,7 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> required jni.JObjType<$K> K, required jni.JObjType<$V> V, }) { - return MyMap.fromRef(K, V, _new0().object); + return MyMap.fromReference(K, V, _new0().reference); } static final _get0 = jniLookup< @@ -2073,7 +2075,7 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> $V get0( $K key, ) { - return V.fromRef(_get0(reference.pointer, key.reference.pointer).object); + return _get0(reference.pointer, key.reference.pointer).object(V); } static final _put = jniLookup< @@ -2090,9 +2092,9 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> $K key, $V value, ) { - return V.fromRef( - _put(reference.pointer, key.reference.pointer, value.reference.pointer) - .object); + return _put( + reference.pointer, key.reference.pointer, value.reference.pointer) + .object(V); } static final _entryStack = jniLookup< @@ -2104,9 +2106,8 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> /// from: public com.github.dart_lang.jnigen.generics.MyStack.MyEntry> entryStack() /// The returned object must be released after use, by calling the [release] method. MyStack> entryStack() { - return const $MyStackType( - $MyMap_MyEntryType(jni.JObjectType(), jni.JObjectType())) - .fromRef(_entryStack(reference.pointer).object); + return _entryStack(reference.pointer).object(const $MyStackType( + $MyMap_MyEntryType(jni.JObjectType(), jni.JObjectType()))); } } @@ -2124,7 +2125,8 @@ final class $MyMapType<$K extends jni.JObject, $V extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/MyMap;"; @override - MyMap<$K, $V> fromRef(jni.JObjectPtr ref) => MyMap.fromRef(K, V, ref); + MyMap<$K, $V> fromReference(jni.JReference reference) => + MyMap.fromReference(K, V, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2151,10 +2153,10 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - MyStack.fromRef( + MyStack.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $MyStackType<$T> type<$T extends jni.JObject>( @@ -2174,7 +2176,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { factory MyStack({ required jni.JObjType<$T> T, }) { - return MyStack.fromRef(T, _new0().object); + return MyStack.fromReference(T, _new0().reference); } static final _fromArray = jniLookup< @@ -2192,7 +2194,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ ((arr.$type as jni.JArrayType).elementType as jni.JObjType), ]) as jni.JObjType<$T>; - return $MyStackType(T).fromRef(_fromArray(arr.reference.pointer).object); + return _fromArray(arr.reference.pointer).object($MyStackType(T)); } static final _fromArrayOfArrayOfGrandParents = jniLookup< @@ -2213,8 +2215,8 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { .elementType as jni.JObjType) as $GrandParentType) .T, ]) as jni.JObjType<$S>; - return $MyStackType(S) - .fromRef(_fromArrayOfArrayOfGrandParents(arr.reference.pointer).object); + return _fromArrayOfArrayOfGrandParents(arr.reference.pointer) + .object($MyStackType(S)); } static final _of = @@ -2226,7 +2228,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { static MyStack<$T> of<$T extends jni.JObject>({ required jni.JObjType<$T> T, }) { - return $MyStackType(T).fromRef(_of().object); + return _of().object($MyStackType(T)); } static final _of1 = jniLookup< @@ -2243,7 +2245,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ obj.$type, ]) as jni.JObjType<$T>; - return $MyStackType(T).fromRef(_of1(obj.reference.pointer).object); + return _of1(obj.reference.pointer).object($MyStackType(T)); } static final _of2 = jniLookup< @@ -2265,8 +2267,8 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { obj2.$type, obj.$type, ]) as jni.JObjType<$T>; - return $MyStackType(T) - .fromRef(_of2(obj.reference.pointer, obj2.reference.pointer).object); + return _of2(obj.reference.pointer, obj2.reference.pointer) + .object($MyStackType(T)); } static final _push = jniLookup< @@ -2281,7 +2283,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { void push( $T item, ) { - return _push(reference.pointer, item.reference.pointer).check(); + _push(reference.pointer, item.reference.pointer).check(); } static final _pop = jniLookup< @@ -2292,7 +2294,7 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { /// from: public T pop() /// The returned object must be released after use, by calling the [release] method. $T pop() { - return T.fromRef(_pop(reference.pointer).object); + return _pop(reference.pointer).object(T); } static final _size = jniLookup< @@ -2318,7 +2320,8 @@ final class $MyStackType<$T extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/MyStack;"; @override - MyStack<$T> fromRef(jni.JObjectPtr ref) => MyStack.fromRef(T, ref); + MyStack<$T> fromReference(jni.JReference reference) => + MyStack.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2344,10 +2347,10 @@ class StringKeyedMap<$V extends jni.JObject> extends MyMap { final jni.JObjType<$V> V; - StringKeyedMap.fromRef( + StringKeyedMap.fromReference( this.V, - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), V, ref); + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), V, reference); /// The type which includes information such as the signature of this class. static $StringKeyedMapType<$V> type<$V extends jni.JObject>( @@ -2367,7 +2370,7 @@ class StringKeyedMap<$V extends jni.JObject> extends MyMap { factory StringKeyedMap({ required jni.JObjType<$V> V, }) { - return StringKeyedMap.fromRef(V, _new0().object); + return StringKeyedMap.fromReference(V, _new0().reference); } } @@ -2384,8 +2387,8 @@ final class $StringKeyedMapType<$V extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/StringKeyedMap;"; @override - StringKeyedMap<$V> fromRef(jni.JObjectPtr ref) => - StringKeyedMap.fromRef(V, ref); + StringKeyedMap<$V> fromReference(jni.JReference reference) => + StringKeyedMap.fromReference(V, reference); @override jni.JObjType get superType => $MyMapType(const jni.JStringType(), V); @@ -2409,9 +2412,9 @@ class StringStack extends MyStack { @override late final jni.JObjType $type = type; - StringStack.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), ref); + StringStack.fromReference( + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), reference); /// The type which includes information such as the signature of this class. static const type = $StringStackType(); @@ -2422,7 +2425,7 @@ class StringStack extends MyStack { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringStack() { - return StringStack.fromRef(_new0().object); + return StringStack.fromReference(_new0().reference); } } @@ -2433,7 +2436,8 @@ final class $StringStackType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/generics/StringStack;"; @override - StringStack fromRef(jni.JObjectPtr ref) => StringStack.fromRef(ref); + StringStack fromReference(jni.JReference reference) => + StringStack.fromReference(reference); @override jni.JObjType get superType => const $MyStackType(jni.JStringType()); @@ -2457,10 +2461,10 @@ class StringValuedMap<$K extends jni.JObject> extends MyMap<$K, jni.JString> { final jni.JObjType<$K> K; - StringValuedMap.fromRef( + StringValuedMap.fromReference( this.K, - jni.JObjectPtr ref, - ) : super.fromRef(K, const jni.JStringType(), ref); + jni.JReference reference, + ) : super.fromReference(K, const jni.JStringType(), reference); /// The type which includes information such as the signature of this class. static $StringValuedMapType<$K> type<$K extends jni.JObject>( @@ -2480,7 +2484,7 @@ class StringValuedMap<$K extends jni.JObject> extends MyMap<$K, jni.JString> { factory StringValuedMap({ required jni.JObjType<$K> K, }) { - return StringValuedMap.fromRef(K, _new0().object); + return StringValuedMap.fromReference(K, _new0().reference); } } @@ -2497,8 +2501,8 @@ final class $StringValuedMapType<$K extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/StringValuedMap;"; @override - StringValuedMap<$K> fromRef(jni.JObjectPtr ref) => - StringValuedMap.fromRef(K, ref); + StringValuedMap<$K> fromReference(jni.JReference reference) => + StringValuedMap.fromReference(K, reference); @override jni.JObjType get superType => $MyMapType(K, const jni.JStringType()); @@ -2524,10 +2528,10 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - MyInterface.fromRef( + MyInterface.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $MyInterfaceType<$T> type<$T extends jni.JObject>( @@ -2550,7 +2554,7 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { void voidCallback( jni.JString s, ) { - return _voidCallback(reference.pointer, s.reference.pointer).check(); + _voidCallback(reference.pointer, s.reference.pointer).check(); } static final _stringCallback = jniLookup< @@ -2566,8 +2570,8 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { jni.JString stringCallback( jni.JString s, ) { - return const jni.JStringType().fromRef( - _stringCallback(reference.pointer, s.reference.pointer).object); + return _stringCallback(reference.pointer, s.reference.pointer) + .object(const jni.JStringType()); } static final _varCallback = jniLookup< @@ -2583,8 +2587,7 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { $T varCallback( $T t, ) { - return T - .fromRef(_varCallback(reference.pointer, t.reference.pointer).object); + return _varCallback(reference.pointer, t.reference.pointer).object(T); } static final _manyPrimitives = jniLookup< @@ -2692,7 +2695,7 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { $MyInterfaceImpl<$T> $impl, ) { final $p = ReceivePort(); - final $x = MyInterface.fromRef( + final $x = MyInterface.fromReference( $impl.T, ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.interfaces.MyInterface", @@ -2785,7 +2788,8 @@ final class $MyInterfaceType<$T extends jni.JObject> r"Lcom/github/dart_lang/jnigen/interfaces/MyInterface;"; @override - MyInterface<$T> fromRef(jni.JObjectPtr ref) => MyInterface.fromRef(T, ref); + MyInterface<$T> fromReference(jni.JReference reference) => + MyInterface.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2809,9 +2813,9 @@ class MyInterfaceConsumer extends jni.JObject { @override late final jni.JObjType $type = type; - MyInterfaceConsumer.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyInterfaceConsumer.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $MyInterfaceConsumerType(); @@ -2822,7 +2826,7 @@ class MyInterfaceConsumer extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory MyInterfaceConsumer() { - return MyInterfaceConsumer.fromRef(_new0().object); + return MyInterfaceConsumer.fromReference(_new0().reference); } static final _consumeOnAnotherThread = jniLookup< @@ -2855,8 +2859,8 @@ class MyInterfaceConsumer extends jni.JObject { t.$type, (myInterface.$type as $MyInterfaceType).T, ]) as jni.JObjType<$T>; - return _consumeOnAnotherThread(myInterface.reference.pointer, - s.reference.pointer, a, b ? 1 : 0, c, d, t.reference.pointer) + _consumeOnAnotherThread(myInterface.reference.pointer, s.reference.pointer, + a, b ? 1 : 0, c, d, t.reference.pointer) .check(); } @@ -2890,8 +2894,8 @@ class MyInterfaceConsumer extends jni.JObject { t.$type, (myInterface.$type as $MyInterfaceType).T, ]) as jni.JObjType<$T>; - return _consumeOnSameThread(myInterface.reference.pointer, - s.reference.pointer, a, b ? 1 : 0, c, d, t.reference.pointer) + _consumeOnSameThread(myInterface.reference.pointer, s.reference.pointer, a, + b ? 1 : 0, c, d, t.reference.pointer) .check(); } } @@ -2904,8 +2908,8 @@ final class $MyInterfaceConsumerType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyInterfaceConsumer;"; @override - MyInterfaceConsumer fromRef(jni.JObjectPtr ref) => - MyInterfaceConsumer.fromRef(ref); + MyInterfaceConsumer fromReference(jni.JReference reference) => + MyInterfaceConsumer.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2928,9 +2932,9 @@ class MyRunnable extends jni.JObject { @override late final jni.JObjType $type = type; - MyRunnable.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyRunnable.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $MyRunnableType(); @@ -2941,7 +2945,7 @@ class MyRunnable extends jni.JObject { /// from: public abstract void run() void run() { - return _run(reference.pointer).check(); + _run(reference.pointer).check(); } /// Maps a specific port to the implemented interface. @@ -2990,7 +2994,7 @@ class MyRunnable extends jni.JObject { $MyRunnableImpl $impl, ) { final $p = ReceivePort(); - final $x = MyRunnable.fromRef( + final $x = MyRunnable.fromReference( ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.interfaces.MyRunnable", $p, @@ -3041,7 +3045,8 @@ final class $MyRunnableType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyRunnable;"; @override - MyRunnable fromRef(jni.JObjectPtr ref) => MyRunnable.fromRef(ref); + MyRunnable fromReference(jni.JReference reference) => + MyRunnable.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3063,9 +3068,9 @@ class MyRunnableRunner extends jni.JObject { @override late final jni.JObjType $type = type; - MyRunnableRunner.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyRunnableRunner.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $MyRunnableRunnerType(); @@ -3089,7 +3094,7 @@ class MyRunnableRunner extends jni.JObject { /// from: public java.lang.Throwable error /// The returned object must be released after use, by calling the [release] method. jni.JObject get error => - const jni.JObjectType().fromRef(_get_error(reference.pointer).object); + _get_error(reference.pointer).object(const jni.JObjectType()); /// from: public java.lang.Throwable error /// The returned object must be released after use, by calling the [release] method. @@ -3107,7 +3112,8 @@ class MyRunnableRunner extends jni.JObject { factory MyRunnableRunner( MyRunnable runnable, ) { - return MyRunnableRunner.fromRef(_new0(runnable.reference.pointer).object); + return MyRunnableRunner.fromReference( + _new0(runnable.reference.pointer).reference); } static final _runOnSameThread = jniLookup< @@ -3118,7 +3124,7 @@ class MyRunnableRunner extends jni.JObject { /// from: public void runOnSameThread() void runOnSameThread() { - return _runOnSameThread(reference.pointer).check(); + _runOnSameThread(reference.pointer).check(); } static final _runOnAnotherThread = jniLookup< @@ -3129,7 +3135,7 @@ class MyRunnableRunner extends jni.JObject { /// from: public void runOnAnotherThread() void runOnAnotherThread() { - return _runOnAnotherThread(reference.pointer).check(); + _runOnAnotherThread(reference.pointer).check(); } } @@ -3141,7 +3147,8 @@ final class $MyRunnableRunnerType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyRunnableRunner;"; @override - MyRunnableRunner fromRef(jni.JObjectPtr ref) => MyRunnableRunner.fromRef(ref); + MyRunnableRunner fromReference(jni.JReference reference) => + MyRunnableRunner.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3164,9 +3171,9 @@ class JsonSerializable_Case extends jni.JObject { @override late final jni.JObjType $type = type; - JsonSerializable_Case.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonSerializable_Case.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonSerializable_CaseType(); @@ -3178,8 +3185,7 @@ class JsonSerializable_Case extends jni.JObject { /// from: static public com.github.dart_lang.jnigen.annotations.JsonSerializable.Case[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonSerializable_CaseType()) - .fromRef(_values().object); + return _values().object(const jni.JArrayType($JsonSerializable_CaseType())); } static final _valueOf = jniLookup< @@ -3193,8 +3199,8 @@ class JsonSerializable_Case extends jni.JObject { static JsonSerializable_Case valueOf( jni.JString name, ) { - return const $JsonSerializable_CaseType() - .fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer) + .object(const $JsonSerializable_CaseType()); } } @@ -3207,8 +3213,8 @@ final class $JsonSerializable_CaseType r"Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;"; @override - JsonSerializable_Case fromRef(jni.JObjectPtr ref) => - JsonSerializable_Case.fromRef(ref); + JsonSerializable_Case fromReference(jni.JReference reference) => + JsonSerializable_Case.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3231,9 +3237,9 @@ class JsonSerializable extends jni.JObject { @override late final jni.JObjType $type = type; - JsonSerializable.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonSerializable.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $JsonSerializableType(); @@ -3246,8 +3252,7 @@ class JsonSerializable extends jni.JObject { /// from: public abstract com.github.dart_lang.jnigen.annotations.JsonSerializable$Case value() /// The returned object must be released after use, by calling the [release] method. JsonSerializable_Case value() { - return const $JsonSerializable_CaseType() - .fromRef(_value(reference.pointer).object); + return _value(reference.pointer).object(const $JsonSerializable_CaseType()); } /// Maps a specific port to the implemented interface. @@ -3300,7 +3305,7 @@ class JsonSerializable extends jni.JObject { $JsonSerializableImpl $impl, ) { final $p = ReceivePort(); - final $x = JsonSerializable.fromRef( + final $x = JsonSerializable.fromReference( ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.annotations.JsonSerializable", $p, @@ -3351,7 +3356,8 @@ final class $JsonSerializableType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/annotations/JsonSerializable;"; @override - JsonSerializable fromRef(jni.JObjectPtr ref) => JsonSerializable.fromRef(ref); + JsonSerializable fromReference(jni.JReference reference) => + JsonSerializable.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3374,9 +3380,9 @@ class MyDataClass extends jni.JObject { @override late final jni.JObjType $type = type; - MyDataClass.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyDataClass.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $MyDataClassType(); @@ -3387,7 +3393,7 @@ class MyDataClass extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory MyDataClass() { - return MyDataClass.fromRef(_new0().object); + return MyDataClass.fromReference(_new0().reference); } } @@ -3399,7 +3405,8 @@ final class $MyDataClassType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/annotations/MyDataClass;"; @override - MyDataClass fromRef(jni.JObjectPtr ref) => MyDataClass.fromRef(ref); + MyDataClass fromReference(jni.JReference reference) => + MyDataClass.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3421,9 +3428,9 @@ class Color extends jni.JObject { @override late final jni.JObjType $type = type; - Color.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Color.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $ColorType(); @@ -3434,7 +3441,7 @@ class Color extends jni.JObject { /// from: static public com.github.dart_lang.jnigen.simple_package.Color[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($ColorType()).fromRef(_values().object); + return _values().object(const jni.JArrayType($ColorType())); } static final _valueOf = jniLookup< @@ -3447,7 +3454,7 @@ class Color extends jni.JObject { static Color valueOf( jni.JString name, ) { - return const $ColorType().fromRef(_valueOf(name.reference.pointer).object); + return _valueOf(name.reference.pointer).object(const $ColorType()); } } @@ -3458,7 +3465,8 @@ final class $ColorType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/simple_package/Color;"; @override - Color fromRef(jni.JObjectPtr ref) => Color.fromRef(ref); + Color fromReference(jni.JReference reference) => + Color.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3480,9 +3488,9 @@ class Exceptions extends jni.JObject { @override late final jni.JObjType $type = type; - Exceptions.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Exceptions.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $ExceptionsType(); @@ -3493,7 +3501,7 @@ class Exceptions extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Exceptions() { - return Exceptions.fromRef(_new0().object); + return Exceptions.fromReference(_new0().reference); } static final _new1 = @@ -3506,7 +3514,7 @@ class Exceptions extends jni.JObject { factory Exceptions.new1( double x, ) { - return Exceptions.fromRef(_new1(x).object); + return Exceptions.fromReference(_new1(x).reference); } static final _new2 = jniLookup< @@ -3525,7 +3533,7 @@ class Exceptions extends jni.JObject { int e, int f, ) { - return Exceptions.fromRef(_new2(a, b, c, d, e, f).object); + return Exceptions.fromReference(_new2(a, b, c, d, e, f).reference); } static final _staticObjectMethod = @@ -3536,7 +3544,7 @@ class Exceptions extends jni.JObject { /// from: static public java.lang.Object staticObjectMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JObject staticObjectMethod() { - return const jni.JObjectType().fromRef(_staticObjectMethod().object); + return _staticObjectMethod().object(const jni.JObjectType()); } static final _staticIntMethod = @@ -3557,8 +3565,8 @@ class Exceptions extends jni.JObject { /// from: static public java.lang.Object[] staticObjectArrayMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JArray staticObjectArrayMethod() { - return const jni.JArrayType(jni.JObjectType()) - .fromRef(_staticObjectArrayMethod().object); + return _staticObjectArrayMethod() + .object(const jni.JArrayType(jni.JObjectType())); } static final _staticIntArrayMethod = @@ -3569,8 +3577,7 @@ class Exceptions extends jni.JObject { /// from: static public int[] staticIntArrayMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JArray staticIntArrayMethod() { - return const jni.JArrayType(jni.jintType()) - .fromRef(_staticIntArrayMethod().object); + return _staticIntArrayMethod().object(const jni.JArrayType(jni.jintType())); } static final _objectMethod = jniLookup< @@ -3582,8 +3589,7 @@ class Exceptions extends jni.JObject { /// from: public java.lang.Object objectMethod() /// The returned object must be released after use, by calling the [release] method. jni.JObject objectMethod() { - return const jni.JObjectType() - .fromRef(_objectMethod(reference.pointer).object); + return _objectMethod(reference.pointer).object(const jni.JObjectType()); } static final _intMethod = jniLookup< @@ -3606,8 +3612,8 @@ class Exceptions extends jni.JObject { /// from: public java.lang.Object[] objectArrayMethod() /// The returned object must be released after use, by calling the [release] method. jni.JArray objectArrayMethod() { - return const jni.JArrayType(jni.JObjectType()) - .fromRef(_objectArrayMethod(reference.pointer).object); + return _objectArrayMethod(reference.pointer) + .object(const jni.JArrayType(jni.JObjectType())); } static final _intArrayMethod = jniLookup< @@ -3619,8 +3625,8 @@ class Exceptions extends jni.JObject { /// from: public int[] intArrayMethod() /// The returned object must be released after use, by calling the [release] method. jni.JArray intArrayMethod() { - return const jni.JArrayType(jni.jintType()) - .fromRef(_intArrayMethod(reference.pointer).object); + return _intArrayMethod(reference.pointer) + .object(const jni.JArrayType(jni.jintType())); } static final _throwNullPointerException = jniLookup< @@ -3643,8 +3649,8 @@ class Exceptions extends jni.JObject { /// from: public java.io.InputStream throwFileNotFoundException() /// The returned object must be released after use, by calling the [release] method. jni.JObject throwFileNotFoundException() { - return const jni.JObjectType() - .fromRef(_throwFileNotFoundException(reference.pointer).object); + return _throwFileNotFoundException(reference.pointer) + .object(const jni.JObjectType()); } static final _throwClassCastException = jniLookup< @@ -3656,8 +3662,8 @@ class Exceptions extends jni.JObject { /// from: public java.io.FileInputStream throwClassCastException() /// The returned object must be released after use, by calling the [release] method. jni.JObject throwClassCastException() { - return const jni.JObjectType() - .fromRef(_throwClassCastException(reference.pointer).object); + return _throwClassCastException(reference.pointer) + .object(const jni.JObjectType()); } static final _throwArrayIndexException = jniLookup< @@ -3689,7 +3695,7 @@ class Exceptions extends jni.JObject { /// from: static public void throwLoremIpsum() static void throwLoremIpsum() { - return _throwLoremIpsum().check(); + _throwLoremIpsum().check(); } } @@ -3701,7 +3707,8 @@ final class $ExceptionsType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Exceptions;"; @override - Exceptions fromRef(jni.JObjectPtr ref) => Exceptions.fromRef(ref); + Exceptions fromReference(jni.JReference reference) => + Exceptions.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3723,9 +3730,9 @@ class Fields extends jni.JObject { @override late final jni.JObjType $type = type; - Fields.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Fields.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $FieldsType(); @@ -3789,8 +3796,7 @@ class Fields extends jni.JObject { /// from: static public java.lang.String name /// The returned object must be released after use, by calling the [release] method. - static jni.JString get name => - const jni.JStringType().fromRef(_get_name().object); + static jni.JString get name => _get_name().object(const jni.JStringType()); /// from: static public java.lang.String name /// The returned object must be released after use, by calling the [release] method. @@ -3817,7 +3823,7 @@ class Fields extends jni.JObject { /// from: public java.lang.Integer i /// The returned object must be released after use, by calling the [release] method. jni.JInteger get i => - const jni.JIntegerType().fromRef(_get_i(reference.pointer).object); + _get_i(reference.pointer).object(const jni.JIntegerType()); /// from: public java.lang.Integer i /// The returned object must be released after use, by calling the [release] method. @@ -3888,8 +3894,9 @@ class Fields extends jni.JObject { /// from: public java.lang.String bestFighterInGreece /// The returned object must be released after use, by calling the [release] method. - jni.JString get bestFighterInGreece => const jni.JStringType() - .fromRef(_get_bestFighterInGreece(reference.pointer).object); + jni.JString get bestFighterInGreece => + _get_bestFighterInGreece(reference.pointer) + .object(const jni.JStringType()); /// from: public java.lang.String bestFighterInGreece /// The returned object must be released after use, by calling the [release] method. @@ -3917,7 +3924,7 @@ class Fields extends jni.JObject { /// from: public java.util.Random random /// The returned object must be released after use, by calling the [release] method. jni.JObject get random => - const jni.JObjectType().fromRef(_get_random(reference.pointer).object); + _get_random(reference.pointer).object(const jni.JObjectType()); /// from: public java.util.Random random /// The returned object must be released after use, by calling the [release] method. @@ -3947,7 +3954,7 @@ class Fields extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Fields() { - return Fields.fromRef(_new0().object); + return Fields.fromReference(_new0().reference); } } @@ -3959,7 +3966,8 @@ final class $FieldsType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Fields;"; @override - Fields fromRef(jni.JObjectPtr ref) => Fields.fromRef(ref); + Fields fromReference(jni.JReference reference) => + Fields.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3981,9 +3989,9 @@ class Fields_Nested extends jni.JObject { @override late final jni.JObjType $type = type; - Fields_Nested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Fields_Nested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static const type = $Fields_NestedType(); @@ -4023,7 +4031,7 @@ class Fields_Nested extends jni.JObject { /// from: static public java.lang.String BEST_GOD /// The returned object must be released after use, by calling the [release] method. static jni.JString get BEST_GOD => - const jni.JStringType().fromRef(_get_BEST_GOD().object); + _get_BEST_GOD().object(const jni.JStringType()); /// from: static public java.lang.String BEST_GOD /// The returned object must be released after use, by calling the [release] method. @@ -4037,7 +4045,7 @@ class Fields_Nested extends jni.JObject { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Fields_Nested() { - return Fields_Nested.fromRef(_new0().object); + return Fields_Nested.fromReference(_new0().reference); } } @@ -4049,7 +4057,8 @@ final class $Fields_NestedType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Fields$Nested;"; @override - Fields_Nested fromRef(jni.JObjectPtr ref) => Fields_Nested.fromRef(ref); + Fields_Nested fromReference(jni.JReference reference) => + Fields_Nested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -4076,11 +4085,11 @@ class GenericTypeParams<$S extends jni.JObject, $K extends jni.JObject> final jni.JObjType<$S> S; final jni.JObjType<$K> K; - GenericTypeParams.fromRef( + GenericTypeParams.fromReference( this.S, this.K, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); /// The type which includes information such as the signature of this class. static $GenericTypeParamsType<$S, $K> @@ -4104,7 +4113,7 @@ class GenericTypeParams<$S extends jni.JObject, $K extends jni.JObject> required jni.JObjType<$S> S, required jni.JObjType<$K> K, }) { - return GenericTypeParams.fromRef(S, K, _new0().object); + return GenericTypeParams.fromReference(S, K, _new0().reference); } } @@ -4123,8 +4132,8 @@ final class $GenericTypeParamsType<$S extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GenericTypeParams;"; @override - GenericTypeParams<$S, $K> fromRef(jni.JObjectPtr ref) => - GenericTypeParams.fromRef(S, K, ref); + GenericTypeParams<$S, $K> fromReference(jni.JReference reference) => + GenericTypeParams.fromReference(S, K, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -4149,9 +4158,9 @@ class StringMap extends StringKeyedMap { @override late final jni.JObjType $type = type; - StringMap.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), ref); + StringMap.fromReference( + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), reference); /// The type which includes information such as the signature of this class. static const type = $StringMapType(); @@ -4162,7 +4171,7 @@ class StringMap extends StringKeyedMap { /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringMap() { - return StringMap.fromRef(_new0().object); + return StringMap.fromReference(_new0().reference); } } @@ -4173,7 +4182,8 @@ final class $StringMapType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/generics/StringMap;"; @override - StringMap fromRef(jni.JObjectPtr ref) => StringMap.fromRef(ref); + StringMap fromReference(jni.JReference reference) => + StringMap.fromReference(reference); @override jni.JObjType get superType => const $StringKeyedMapType(jni.JStringType()); diff --git a/pkgs/jnigen/test/simple_package_test/dart_only/dart_bindings/simple_package.dart b/pkgs/jnigen/test/simple_package_test/dart_only/dart_bindings/simple_package.dart index ba14ad85b6..3e462b47e0 100644 --- a/pkgs/jnigen/test/simple_package_test/dart_only/dart_bindings/simple_package.dart +++ b/pkgs/jnigen/test/simple_package_test/dart_only/dart_bindings/simple_package.dart @@ -31,39 +31,36 @@ class Example_Nested_NestedTwice extends jni.JObject { @override late final jni.JObjType $type = type; - Example_Nested_NestedTwice.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_Nested_NestedTwice.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/simple_package/Example$Nested$NestedTwice"); /// The type which includes information such as the signature of this class. static const type = $Example_Nested_NestedTwiceType(); - static final _id_ZERO = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_ZERO = _class.staticFieldId( r"ZERO", r"I", ); /// from: static public int ZERO - static int get ZERO => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_ZERO, jni.JniCallType.intType) - .integer; + static int get ZERO => _id_ZERO.get(_class, const jni.jintType()); /// from: static public int ZERO static set ZERO(int value) => - jni.Jni.env.SetStaticIntField(_class.reference.pointer, _id_ZERO, value); + _id_ZERO.set(_class, const jni.jintType(), value); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example_Nested_NestedTwice() { - return Example_Nested_NestedTwice.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Example_Nested_NestedTwice.fromReference( + _id_new0(_class, referenceType, [])); } } @@ -76,8 +73,8 @@ final class $Example_Nested_NestedTwiceType r"Lcom/github/dart_lang/jnigen/simple_package/Example$Nested$NestedTwice;"; @override - Example_Nested_NestedTwice fromRef(jni.JObjectPtr ref) => - Example_Nested_NestedTwice.fromRef(ref); + Example_Nested_NestedTwice fromReference(jni.JReference reference) => + Example_Nested_NestedTwice.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -100,54 +97,58 @@ class Example_Nested extends jni.JObject { @override late final jni.JObjType $type = type; - Example_Nested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_Nested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/simple_package/Example$Nested"); /// The type which includes information such as the signature of this class. static const type = $Example_NestedType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(Z)V"); + static final _id_new0 = _class.constructorId( + r"(Z)V", + ); /// from: public void (boolean value) /// The returned object must be released after use, by calling the [release] method. factory Example_Nested( bool value, ) { - return Example_Nested.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new0, [value ? 1 : 0]).object); + return Example_Nested.fromReference( + _id_new0(_class, referenceType, [value ? 1 : 0])); } - static final _id_usesAnonymousInnerClass = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"usesAnonymousInnerClass", r"()V"); + static final _id_usesAnonymousInnerClass = _class.instanceMethodId( + r"usesAnonymousInnerClass", + r"()V", + ); /// from: public void usesAnonymousInnerClass() void usesAnonymousInnerClass() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_usesAnonymousInnerClass, jni.JniCallType.voidType, []).check(); + _id_usesAnonymousInnerClass(this, const jni.jvoidType(), []); } - static final _id_getValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getValue", r"()Z"); + static final _id_getValue = _class.instanceMethodId( + r"getValue", + r"()Z", + ); /// from: public boolean getValue() bool getValue() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_getValue, - jni.JniCallType.booleanType, []).boolean; + return _id_getValue(this, const jni.jbooleanType(), []); } - static final _id_setValue = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"setValue", r"(Z)V"); + static final _id_setValue = _class.instanceMethodId( + r"setValue", + r"(Z)V", + ); /// from: public void setValue(boolean value) void setValue( bool value, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_setValue, - jni.JniCallType.voidType, [value ? 1 : 0]).check(); + _id_setValue(this, const jni.jvoidType(), [value ? 1 : 0]); } } @@ -159,7 +160,8 @@ final class $Example_NestedType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;"; @override - Example_Nested fromRef(jni.JObjectPtr ref) => Example_Nested.fromRef(ref); + Example_Nested fromReference(jni.JReference reference) => + Example_Nested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -182,44 +184,37 @@ class Example_NonStaticNested extends jni.JObject { @override late final jni.JObjType $type = type; - Example_NonStaticNested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example_NonStaticNested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/simple_package/Example$NonStaticNested"); /// The type which includes information such as the signature of this class. static const type = $Example_NonStaticNestedType(); - static final _id_ok = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_ok = _class.instanceFieldId( r"ok", r"Z", ); /// from: public boolean ok - bool get ok => jni.Jni.accessors - .getField(reference.pointer, _id_ok, jni.JniCallType.booleanType) - .boolean; + bool get ok => _id_ok.get(this, const jni.jbooleanType()); /// from: public boolean ok - set ok(bool value) => - jni.Jni.env.SetBooleanField(reference.pointer, _id_ok, value ? 1 : 0); + set ok(bool value) => _id_ok.set(this, const jni.jbooleanType(), value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/simple_package/Example;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/simple_package/Example;)V", + ); /// from: public void (com.github.dart_lang.jnigen.simple_package.Example $parent) /// The returned object must be released after use, by calling the [release] method. factory Example_NonStaticNested( Example $parent, ) { - return Example_NonStaticNested.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, - _id_new0, - [$parent.reference.pointer]).object); + return Example_NonStaticNested.fromReference( + _id_new0(_class, referenceType, [$parent.reference.pointer])); } } @@ -232,8 +227,8 @@ final class $Example_NonStaticNestedType r"Lcom/github/dart_lang/jnigen/simple_package/Example$NonStaticNested;"; @override - Example_NonStaticNested fromRef(jni.JObjectPtr ref) => - Example_NonStaticNested.fromRef(ref); + Example_NonStaticNested fromReference(jni.JReference reference) => + Example_NonStaticNested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -256,12 +251,12 @@ class Example extends jni.JObject { @override late final jni.JObjType $type = type; - Example.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/simple_package/Example"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/simple_package/Example"); /// The type which includes information such as the signature of this class. static const type = $ExampleType(); @@ -277,8 +272,7 @@ class Example extends jni.JObject { /// from: static public final char SEMICOLON static const SEMICOLON = 59; - static final _id_SEMICOLON_STRING = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_SEMICOLON_STRING = _class.staticFieldId( r"SEMICOLON_STRING", r"Ljava/lang/String;", ); @@ -286,13 +280,9 @@ class Example extends jni.JObject { /// from: static public final java.lang.String SEMICOLON_STRING /// The returned object must be released after use, by calling the [release] method. static jni.JString get SEMICOLON_STRING => - const jni.JStringType().fromRef(jni.Jni.accessors - .getStaticField(_class.reference.pointer, _id_SEMICOLON_STRING, - jni.JniCallType.objectType) - .object); + _id_SEMICOLON_STRING.get(_class, const jni.JStringType()); - static final _id_unusedRandom = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_unusedRandom = _class.staticFieldId( r"unusedRandom", r"Ljava/util/Random;", ); @@ -300,13 +290,9 @@ class Example extends jni.JObject { /// from: static public final java.util.Random unusedRandom /// The returned object must be released after use, by calling the [release] method. static jni.JObject get unusedRandom => - const jni.JObjectType().fromRef(jni.Jni.accessors - .getStaticField(_class.reference.pointer, _id_unusedRandom, - jni.JniCallType.objectType) - .object); + _id_unusedRandom.get(_class, const jni.JObjectType()); - static final _id_protectedField = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_protectedField = _class.instanceFieldId( r"protectedField", r"Ljava/util/Random;", ); @@ -314,113 +300,106 @@ class Example extends jni.JObject { /// from: protected java.util.Random protectedField /// The returned object must be released after use, by calling the [release] method. jni.JObject get protectedField => - const jni.JObjectType().fromRef(jni.Jni.accessors - .getField( - reference.pointer, _id_protectedField, jni.JniCallType.objectType) - .object); + _id_protectedField.get(this, const jni.JObjectType()); /// from: protected java.util.Random protectedField /// The returned object must be released after use, by calling the [release] method. - set protectedField(jni.JObject value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_protectedField, value.reference.pointer); + set protectedField(jni.JObject value) => + _id_protectedField.set(this, const jni.JObjectType(), value); - static final _id_getAmount = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"getAmount", r"()I"); + static final _id_getAmount = _class.staticMethodId( + r"getAmount", + r"()I", + ); /// from: static public int getAmount() static int getAmount() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_getAmount, jni.JniCallType.intType, []).integer; + return _id_getAmount(_class, const jni.jintType(), []); } - static final _id_getPi = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"getPi", r"()D"); + static final _id_getPi = _class.staticMethodId( + r"getPi", + r"()D", + ); /// from: static public double getPi() static double getPi() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_getPi, jni.JniCallType.doubleType, []).doubleFloat; + return _id_getPi(_class, const jni.jdoubleType(), []); } - static final _id_getAsterisk = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"getAsterisk", r"()C"); + static final _id_getAsterisk = _class.staticMethodId( + r"getAsterisk", + r"()C", + ); /// from: static public char getAsterisk() static int getAsterisk() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_getAsterisk, jni.JniCallType.charType, []).char; + return _id_getAsterisk(_class, const jni.jcharType(), []); } - static final _id_getName = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"getName", r"()Ljava/lang/String;"); + static final _id_getName = _class.staticMethodId( + r"getName", + r"()Ljava/lang/String;", + ); /// from: static public java.lang.String getName() /// The returned object must be released after use, by calling the [release] method. static jni.JString getName() { - return const jni.JStringType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_getName, - jni.JniCallType.objectType, []).object); + return _id_getName(_class, const jni.JStringType(), []); } - static final _id_getNestedInstance = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"getNestedInstance", - r"()Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;"); + static final _id_getNestedInstance = _class.staticMethodId( + r"getNestedInstance", + r"()Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;", + ); /// from: static public com.github.dart_lang.jnigen.simple_package.Example.Nested getNestedInstance() /// The returned object must be released after use, by calling the [release] method. static Example_Nested getNestedInstance() { - return const $Example_NestedType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, - _id_getNestedInstance, jni.JniCallType.objectType, []).object); + return _id_getNestedInstance(_class, const $Example_NestedType(), []); } - static final _id_setAmount = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"setAmount", r"(I)V"); + static final _id_setAmount = _class.staticMethodId( + r"setAmount", + r"(I)V", + ); /// from: static public void setAmount(int newAmount) static void setAmount( int newAmount, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_setAmount, - jni.JniCallType.voidType, - [jni.JValueInt(newAmount)]).check(); + _id_setAmount(_class, const jni.jvoidType(), [jni.JValueInt(newAmount)]); } - static final _id_setName = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"setName", r"(Ljava/lang/String;)V"); + static final _id_setName = _class.staticMethodId( + r"setName", + r"(Ljava/lang/String;)V", + ); /// from: static public void setName(java.lang.String newName) static void setName( jni.JString newName, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_setName, - jni.JniCallType.voidType, - [newName.reference.pointer]).check(); + _id_setName(_class, const jni.jvoidType(), [newName.reference.pointer]); } - static final _id_setNestedInstance = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"setNestedInstance", - r"(Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;)V"); + static final _id_setNestedInstance = _class.staticMethodId( + r"setNestedInstance", + r"(Lcom/github/dart_lang/jnigen/simple_package/Example$Nested;)V", + ); /// from: static public void setNestedInstance(com.github.dart_lang.jnigen.simple_package.Example.Nested newNested) static void setNestedInstance( Example_Nested newNested, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_setNestedInstance, - jni.JniCallType.voidType, - [newNested.reference.pointer]).check(); + _id_setNestedInstance( + _class, const jni.jvoidType(), [newNested.reference.pointer]); } - static final _id_max4 = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"max4", r"(IIII)I"); + static final _id_max4 = _class.staticMethodId( + r"max4", + r"(IIII)I", + ); /// from: static public int max4(int a, int b, int c, int d) static int max4( @@ -429,17 +408,18 @@ class Example extends jni.JObject { int c, int d, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, _id_max4, jni.JniCallType.intType, [ + return _id_max4(_class, const jni.jintType(), [ jni.JValueInt(a), jni.JValueInt(b), jni.JValueInt(c), jni.JValueInt(d) - ]).integer; + ]); } - static final _id_max8 = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"max8", r"(IIIIIIII)I"); + static final _id_max8 = _class.staticMethodId( + r"max8", + r"(IIIIIIII)I", + ); /// from: static public int max8(int a, int b, int c, int d, int e, int f, int g, int h) static int max8( @@ -452,8 +432,7 @@ class Example extends jni.JObject { int g, int h, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, _id_max8, jni.JniCallType.intType, [ + return _id_max8(_class, const jni.jintType(), [ jni.JValueInt(a), jni.JValueInt(b), jni.JValueInt(c), @@ -462,115 +441,113 @@ class Example extends jni.JObject { jni.JValueInt(f), jni.JValueInt(g), jni.JValueInt(h) - ]).integer; + ]); } - static final _id_getNumber = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getNumber", r"()I"); + static final _id_getNumber = _class.instanceMethodId( + r"getNumber", + r"()I", + ); /// from: public int getNumber() int getNumber() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getNumber, jni.JniCallType.intType, []).integer; + return _id_getNumber(this, const jni.jintType(), []); } - static final _id_setNumber = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"setNumber", r"(I)V"); + static final _id_setNumber = _class.instanceMethodId( + r"setNumber", + r"(I)V", + ); /// from: public void setNumber(int number) void setNumber( int number, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setNumber, - jni.JniCallType.voidType, - [jni.JValueInt(number)]).check(); + _id_setNumber(this, const jni.jvoidType(), [jni.JValueInt(number)]); } - static final _id_getIsUp = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getIsUp", r"()Z"); + static final _id_getIsUp = _class.instanceMethodId( + r"getIsUp", + r"()Z", + ); /// from: public boolean getIsUp() bool getIsUp() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_getIsUp, - jni.JniCallType.booleanType, []).boolean; + return _id_getIsUp(this, const jni.jbooleanType(), []); } - static final _id_setUp = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"setUp", r"(Z)V"); + static final _id_setUp = _class.instanceMethodId( + r"setUp", + r"(Z)V", + ); /// from: public void setUp(boolean isUp) void setUp( bool isUp, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_setUp, - jni.JniCallType.voidType, [isUp ? 1 : 0]).check(); + _id_setUp(this, const jni.jvoidType(), [isUp ? 1 : 0]); } - static final _id_getCodename = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getCodename", r"()Ljava/lang/String;"); + static final _id_getCodename = _class.instanceMethodId( + r"getCodename", + r"()Ljava/lang/String;", + ); /// from: public java.lang.String getCodename() /// The returned object must be released after use, by calling the [release] method. jni.JString getCodename() { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getCodename, - jni.JniCallType.objectType, []).object); + return _id_getCodename(this, const jni.JStringType(), []); } - static final _id_setCodename = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"setCodename", r"(Ljava/lang/String;)V"); + static final _id_setCodename = _class.instanceMethodId( + r"setCodename", + r"(Ljava/lang/String;)V", + ); /// from: public void setCodename(java.lang.String codename) void setCodename( jni.JString codename, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setCodename, - jni.JniCallType.voidType, - [codename.reference.pointer]).check(); + _id_setCodename(this, const jni.jvoidType(), [codename.reference.pointer]); } - static final _id_getRandom = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getRandom", r"()Ljava/util/Random;"); + static final _id_getRandom = _class.instanceMethodId( + r"getRandom", + r"()Ljava/util/Random;", + ); /// from: public java.util.Random getRandom() /// The returned object must be released after use, by calling the [release] method. jni.JObject getRandom() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getRandom, - jni.JniCallType.objectType, []).object); + return _id_getRandom(this, const jni.JObjectType(), []); } - static final _id_setRandom = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"setRandom", r"(Ljava/util/Random;)V"); + static final _id_setRandom = _class.instanceMethodId( + r"setRandom", + r"(Ljava/util/Random;)V", + ); /// from: public void setRandom(java.util.Random random) void setRandom( jni.JObject random, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_setRandom, - jni.JniCallType.voidType, - [random.reference.pointer]).check(); + _id_setRandom(this, const jni.jvoidType(), [random.reference.pointer]); } - static final _id_getRandomLong = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"getRandomLong", r"()J"); + static final _id_getRandomLong = _class.instanceMethodId( + r"getRandomLong", + r"()J", + ); /// from: public long getRandomLong() int getRandomLong() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_getRandomLong, jni.JniCallType.longType, []).long; + return _id_getRandomLong(this, const jni.jlongType(), []); } - static final _id_add4Longs = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"add4Longs", r"(JJJJ)J"); + static final _id_add4Longs = _class.instanceMethodId( + r"add4Longs", + r"(JJJJ)J", + ); /// from: public long add4Longs(long a, long b, long c, long d) int add4Longs( @@ -579,12 +556,13 @@ class Example extends jni.JObject { int c, int d, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_add4Longs, jni.JniCallType.longType, [a, b, c, d]).long; + return _id_add4Longs(this, const jni.jlongType(), [a, b, c, d]); } - static final _id_add8Longs = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"add8Longs", r"(JJJJJJJJ)J"); + static final _id_add8Longs = _class.instanceMethodId( + r"add8Longs", + r"(JJJJJJJJ)J", + ); /// from: public long add8Longs(long a, long b, long c, long d, long e, long f, long g, long h) int add8Longs( @@ -597,68 +575,62 @@ class Example extends jni.JObject { int g, int h, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_add8Longs, jni.JniCallType.longType, [a, b, c, d, e, f, g, h]).long; + return _id_add8Longs(this, const jni.jlongType(), [a, b, c, d, e, f, g, h]); } - static final _id_getRandomNumericString = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getRandomNumericString", - r"(Ljava/util/Random;)Ljava/lang/String;"); + static final _id_getRandomNumericString = _class.instanceMethodId( + r"getRandomNumericString", + r"(Ljava/util/Random;)Ljava/lang/String;", + ); /// from: public java.lang.String getRandomNumericString(java.util.Random random) /// The returned object must be released after use, by calling the [release] method. jni.JString getRandomNumericString( jni.JObject random, ) { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_getRandomNumericString, - jni.JniCallType.objectType, - [random.reference.pointer]).object); + return _id_getRandomNumericString( + this, const jni.JStringType(), [random.reference.pointer]); } - static final _id_protectedMethod = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"protectedMethod", - r"(Ljava/lang/String;Ljava/lang/String;)V"); + static final _id_protectedMethod = _class.instanceMethodId( + r"protectedMethod", + r"(Ljava/lang/String;Ljava/lang/String;)V", + ); /// from: protected void protectedMethod(java.lang.String a, java.lang.String b) void protectedMethod( jni.JString a, jni.JString b, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_protectedMethod, - jni.JniCallType.voidType, - [a.reference.pointer, b.reference.pointer]).check(); + _id_protectedMethod(this, const jni.jvoidType(), + [a.reference.pointer, b.reference.pointer]); } - static final _id_finalMethod = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"finalMethod", r"()V"); + static final _id_finalMethod = _class.instanceMethodId( + r"finalMethod", + r"()V", + ); /// from: public final void finalMethod() void finalMethod() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_finalMethod, jni.JniCallType.voidType, []).check(); + _id_finalMethod(this, const jni.jvoidType(), []); } - static final _id_getList = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"getList", r"()Ljava/util/List;"); + static final _id_getList = _class.instanceMethodId( + r"getList", + r"()Ljava/util/List;", + ); /// from: public java.util.List getList() /// The returned object must be released after use, by calling the [release] method. jni.JList getList() { - return const jni.JListType(jni.JStringType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_getList, - jni.JniCallType.objectType, []).object); + return _id_getList(this, const jni.JListType(jni.JStringType()), []); } - static final _id_joinStrings = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"joinStrings", - r"(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String;"); + static final _id_joinStrings = _class.instanceMethodId( + r"joinStrings", + r"(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String;", + ); /// from: public java.lang.String joinStrings(java.util.List values, java.lang.String delim) /// The returned object must be released after use, by calling the [release] method. @@ -668,17 +640,14 @@ class Example extends jni.JObject { jni.JList values, jni.JString delim, ) { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_joinStrings, - jni.JniCallType.objectType, - [values.reference.pointer, delim.reference.pointer]).object); + return _id_joinStrings(this, const jni.JStringType(), + [values.reference.pointer, delim.reference.pointer]); } - static final _id_methodWithSeveralParams = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"methodWithSeveralParams", - r"(CLjava/lang/String;[ILjava/lang/CharSequence;Ljava/util/List;Ljava/util/Map;)V"); + static final _id_methodWithSeveralParams = _class.instanceMethodId( + r"methodWithSeveralParams", + r"(CLjava/lang/String;[ILjava/lang/CharSequence;Ljava/util/List;Ljava/util/Map;)V", + ); /// from: public void methodWithSeveralParams(char ch, java.lang.String s, int[] a, T t, java.util.List lt, java.util.Map wm) void methodWithSeveralParams<$T extends jni.JObject>( @@ -694,41 +663,42 @@ class Example extends jni.JObject { (lt.$type as jni.JListType).E, t.$type, ]) as jni.JObjType<$T>; - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_methodWithSeveralParams, jni.JniCallType.voidType, [ + _id_methodWithSeveralParams(this, const jni.jvoidType(), [ jni.JValueChar(ch), s.reference.pointer, a.reference.pointer, t.reference.pointer, lt.reference.pointer, wm.reference.pointer - ]).check(); + ]); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example() { - return Example.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Example.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_new1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(I)V"); + static final _id_new1 = _class.constructorId( + r"(I)V", + ); /// from: public void (int number) /// The returned object must be released after use, by calling the [release] method. factory Example.new1( int number, ) { - return Example.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new1, [jni.JValueInt(number)]).object); + return Example.fromReference( + _id_new1(_class, referenceType, [jni.JValueInt(number)])); } - static final _id_new2 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(IZ)V"); + static final _id_new2 = _class.constructorId( + r"(IZ)V", + ); /// from: public void (int number, boolean isUp) /// The returned object must be released after use, by calling the [release] method. @@ -736,14 +706,13 @@ class Example extends jni.JObject { int number, bool isUp, ) { - return Example.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, - _id_new2, - [jni.JValueInt(number), isUp ? 1 : 0]).object); + return Example.fromReference( + _id_new2(_class, referenceType, [jni.JValueInt(number), isUp ? 1 : 0])); } - static final _id_new3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"", r"(IZLjava/lang/String;)V"); + static final _id_new3 = _class.constructorId( + r"(IZLjava/lang/String;)V", + ); /// from: public void (int number, boolean isUp, java.lang.String codename) /// The returned object must be released after use, by calling the [release] method. @@ -752,16 +721,13 @@ class Example extends jni.JObject { bool isUp, jni.JString codename, ) { - return Example.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new3, [ - jni.JValueInt(number), - isUp ? 1 : 0, - codename.reference.pointer - ]).object); + return Example.fromReference(_id_new3(_class, referenceType, + [jni.JValueInt(number), isUp ? 1 : 0, codename.reference.pointer])); } - static final _id_new4 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(IIIIIIII)V"); + static final _id_new4 = _class.constructorId( + r"(IIIIIIII)V", + ); /// from: public void (int a, int b, int c, int d, int e, int f, int g, int h) /// The returned object must be released after use, by calling the [release] method. @@ -775,8 +741,7 @@ class Example extends jni.JObject { int g, int h, ) { - return Example.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new4, [ + return Example.fromReference(_id_new4(_class, referenceType, [ jni.JValueInt(a), jni.JValueInt(b), jni.JValueInt(c), @@ -785,140 +750,137 @@ class Example extends jni.JObject { jni.JValueInt(f), jni.JValueInt(g), jni.JValueInt(h) - ]).object); + ])); } - static final _id_whichExample = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"whichExample", r"()I"); + static final _id_whichExample = _class.instanceMethodId( + r"whichExample", + r"()I", + ); /// from: public int whichExample() int whichExample() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_whichExample, jni.JniCallType.intType, []).integer; + return _id_whichExample(this, const jni.jintType(), []); } - static final _id_addInts = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"addInts", r"(II)I"); + static final _id_addInts = _class.staticMethodId( + r"addInts", + r"(II)I", + ); /// from: static public int addInts(int a, int b) static int addInts( int a, int b, ) { - return jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_addInts, - jni.JniCallType.intType, - [jni.JValueInt(a), jni.JValueInt(b)]).integer; + return _id_addInts( + _class, const jni.jintType(), [jni.JValueInt(a), jni.JValueInt(b)]); } - static final _id_getArr = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"getArr", r"()[I"); + static final _id_getArr = _class.staticMethodId( + r"getArr", + r"()[I", + ); /// from: static public int[] getArr() /// The returned object must be released after use, by calling the [release] method. static jni.JArray getArr() { - return const jni.JArrayType(jni.jintType()).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_getArr, - jni.JniCallType.objectType, []).object); + return _id_getArr(_class, const jni.JArrayType(jni.jintType()), []); } - static final _id_addAll = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"addAll", r"([I)I"); + static final _id_addAll = _class.staticMethodId( + r"addAll", + r"([I)I", + ); /// from: static public int addAll(int[] arr) static int addAll( jni.JArray arr, ) { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_addAll, jni.JniCallType.intType, [arr.reference.pointer]).integer; + return _id_addAll(_class, const jni.jintType(), [arr.reference.pointer]); } - static final _id_getSelf = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"getSelf", - r"()Lcom/github/dart_lang/jnigen/simple_package/Example;"); + static final _id_getSelf = _class.instanceMethodId( + r"getSelf", + r"()Lcom/github/dart_lang/jnigen/simple_package/Example;", + ); /// from: public com.github.dart_lang.jnigen.simple_package.Example getSelf() /// The returned object must be released after use, by calling the [release] method. Example getSelf() { - return const $ExampleType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_getSelf, jni.JniCallType.objectType, []).object); + return _id_getSelf(this, const $ExampleType(), []); } - static final _id_throwException = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"throwException", r"()V"); + static final _id_throwException = _class.staticMethodId( + r"throwException", + r"()V", + ); /// from: static public void throwException() static void throwException() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_throwException, jni.JniCallType.voidType, []).check(); + _id_throwException(_class, const jni.jvoidType(), []); } - static final _id_overloaded = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"overloaded", r"()V"); + static final _id_overloaded = _class.instanceMethodId( + r"overloaded", + r"()V", + ); /// from: public void overloaded() void overloaded() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_overloaded, jni.JniCallType.voidType, []).check(); + _id_overloaded(this, const jni.jvoidType(), []); } - static final _id_overloaded1 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"overloaded", r"(ILjava/lang/String;)V"); + static final _id_overloaded1 = _class.instanceMethodId( + r"overloaded", + r"(ILjava/lang/String;)V", + ); /// from: public void overloaded(int a, java.lang.String b) void overloaded1( int a, jni.JString b, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overloaded1, - jni.JniCallType.voidType, - [jni.JValueInt(a), b.reference.pointer]).check(); + _id_overloaded1( + this, const jni.jvoidType(), [jni.JValueInt(a), b.reference.pointer]); } - static final _id_overloaded2 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"overloaded", r"(I)V"); + static final _id_overloaded2 = _class.instanceMethodId( + r"overloaded", + r"(I)V", + ); /// from: public void overloaded(int a) void overloaded2( int a, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_overloaded2, jni.JniCallType.voidType, [jni.JValueInt(a)]).check(); + _id_overloaded2(this, const jni.jvoidType(), [jni.JValueInt(a)]); } - static final _id_overloaded3 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"overloaded", - r"(Ljava/util/List;Ljava/lang/String;)V"); + static final _id_overloaded3 = _class.instanceMethodId( + r"overloaded", + r"(Ljava/util/List;Ljava/lang/String;)V", + ); /// from: public void overloaded(java.util.List a, java.lang.String b) void overloaded3( jni.JList a, jni.JString b, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overloaded3, - jni.JniCallType.voidType, - [a.reference.pointer, b.reference.pointer]).check(); + _id_overloaded3(this, const jni.jvoidType(), + [a.reference.pointer, b.reference.pointer]); } - static final _id_overloaded4 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"overloaded", r"(Ljava/util/List;)V"); + static final _id_overloaded4 = _class.instanceMethodId( + r"overloaded", + r"(Ljava/util/List;)V", + ); /// from: public void overloaded(java.util.List a) void overloaded4( jni.JList a, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_overloaded4, - jni.JniCallType.voidType, - [a.reference.pointer]).check(); + _id_overloaded4(this, const jni.jvoidType(), [a.reference.pointer]); } } @@ -930,7 +892,8 @@ final class $ExampleType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Example;"; @override - Example fromRef(jni.JObjectPtr ref) => Example.fromRef(ref); + Example fromReference(jni.JReference reference) => + Example.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -952,39 +915,35 @@ class C2 extends jni.JObject { @override late final jni.JObjType $type = type; - C2.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + C2.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/pkg2/C2"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/pkg2/C2"); /// The type which includes information such as the signature of this class. static const type = $C2Type(); - static final _id_CONSTANT = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_CONSTANT = _class.staticFieldId( r"CONSTANT", r"I", ); /// from: static public int CONSTANT - static int get CONSTANT => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_CONSTANT, jni.JniCallType.intType) - .integer; + static int get CONSTANT => _id_CONSTANT.get(_class, const jni.jintType()); /// from: static public int CONSTANT - static set CONSTANT(int value) => jni.Jni.env - .SetStaticIntField(_class.reference.pointer, _id_CONSTANT, value); + static set CONSTANT(int value) => + _id_CONSTANT.set(_class, const jni.jintType(), value); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory C2() { - return C2.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return C2.fromReference(_id_new0(_class, referenceType, [])); } } @@ -995,7 +954,7 @@ final class $C2Type extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/pkg2/C2;"; @override - C2 fromRef(jni.JObjectPtr ref) => C2.fromRef(ref); + C2 fromReference(jni.JReference reference) => C2.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1017,32 +976,33 @@ class Example1 extends jni.JObject { @override late final jni.JObjType $type = type; - Example1.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Example1.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/pkg2/Example"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/pkg2/Example"); /// The type which includes information such as the signature of this class. static const type = $Example1Type(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Example1() { - return Example1.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Example1.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_whichExample = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"whichExample", r"()I"); + static final _id_whichExample = _class.instanceMethodId( + r"whichExample", + r"()I", + ); /// from: public int whichExample() int whichExample() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_whichExample, jni.JniCallType.intType, []).integer; + return _id_whichExample(this, const jni.jintType(), []); } } @@ -1053,7 +1013,8 @@ final class $Example1Type extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/pkg2/Example;"; @override - Example1 fromRef(jni.JObjectPtr ref) => Example1.fromRef(ref); + Example1 fromReference(jni.JReference reference) => + Example1.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1081,14 +1042,14 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, final jni.JObjType<$S> S; final jni.JObjType<$U> U; - GrandParent_Parent_Child.fromRef( + GrandParent_Parent_Child.fromReference( this.T, this.S, this.U, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/GrandParent$Parent$Child"); /// The type which includes information such as the signature of this class. @@ -1105,62 +1066,48 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, ); } - static final _id_grandParentValue = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_grandParentValue = _class.instanceFieldId( r"grandParentValue", r"Ljava/lang/Object;", ); /// from: public T grandParentValue /// The returned object must be released after use, by calling the [release] method. - $T get grandParentValue => T.fromRef(jni.Jni.accessors - .getField( - reference.pointer, _id_grandParentValue, jni.JniCallType.objectType) - .object); + $T get grandParentValue => _id_grandParentValue.get(this, T); /// from: public T grandParentValue /// The returned object must be released after use, by calling the [release] method. - set grandParentValue($T value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_grandParentValue, value.reference.pointer); + set grandParentValue($T value) => _id_grandParentValue.set(this, T, value); - static final _id_parentValue = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_parentValue = _class.instanceFieldId( r"parentValue", r"Ljava/lang/Object;", ); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - $S get parentValue => S.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_parentValue, jni.JniCallType.objectType) - .object); + $S get parentValue => _id_parentValue.get(this, S); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - set parentValue($S value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_parentValue, value.reference.pointer); + set parentValue($S value) => _id_parentValue.set(this, S, value); - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public U value /// The returned object must be released after use, by calling the [release] method. - $U get value => U.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $U get value => _id_value.get(this, U); /// from: public U value /// The returned object must be released after use, by calling the [release] method. - set value($U value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($U value) => _id_value.set(this, U, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;Ljava/lang/Object;)V", + ); /// from: public void (com.github.dart_lang.jnigen.generics.GrandParent$Parent $parent, U newValue) /// The returned object must be released after use, by calling the [release] method. @@ -1180,12 +1127,12 @@ class GrandParent_Parent_Child<$T extends jni.JObject, $S extends jni.JObject, U ??= jni.lowestCommonSuperType([ newValue.$type, ]) as jni.JObjType<$U>; - return GrandParent_Parent_Child.fromRef( + return GrandParent_Parent_Child.fromReference( T, S, U, - jni.Jni.accessors.newObjectWithArgs(_class.reference.pointer, _id_new0, - [$parent.reference.pointer, newValue.reference.pointer]).object); + _id_new0(_class, referenceType, + [$parent.reference.pointer, newValue.reference.pointer])); } } @@ -1207,8 +1154,9 @@ final class $GrandParent_Parent_ChildType<$T extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent$Child;"; @override - GrandParent_Parent_Child<$T, $S, $U> fromRef(jni.JObjectPtr ref) => - GrandParent_Parent_Child.fromRef(T, S, U, ref); + GrandParent_Parent_Child<$T, $S, $U> fromReference( + jni.JReference reference) => + GrandParent_Parent_Child.fromReference(T, S, U, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1238,13 +1186,13 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> final jni.JObjType<$T> T; final jni.JObjType<$S> S; - GrandParent_Parent.fromRef( + GrandParent_Parent.fromReference( this.T, this.S, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/GrandParent$Parent"); /// The type which includes information such as the signature of this class. @@ -1259,44 +1207,35 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> ); } - static final _id_parentValue = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_parentValue = _class.instanceFieldId( r"parentValue", r"Ljava/lang/Object;", ); /// from: public T parentValue /// The returned object must be released after use, by calling the [release] method. - $T get parentValue => T.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_parentValue, jni.JniCallType.objectType) - .object); + $T get parentValue => _id_parentValue.get(this, T); /// from: public T parentValue /// The returned object must be released after use, by calling the [release] method. - set parentValue($T value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_parentValue, value.reference.pointer); + set parentValue($T value) => _id_parentValue.set(this, T, value); - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public S value /// The returned object must be released after use, by calling the [release] method. - $S get value => S.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $S get value => _id_value.get(this, S); /// from: public S value /// The returned object must be released after use, by calling the [release] method. - set value($S value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($S value) => _id_value.set(this, S, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/generics/GrandParent;Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/generics/GrandParent;Ljava/lang/Object;)V", + ); /// from: public void (com.github.dart_lang.jnigen.generics.GrandParent $parent, S newValue) /// The returned object must be released after use, by calling the [release] method. @@ -1312,11 +1251,11 @@ class GrandParent_Parent<$T extends jni.JObject, $S extends jni.JObject> S ??= jni.lowestCommonSuperType([ newValue.$type, ]) as jni.JObjType<$S>; - return GrandParent_Parent.fromRef( + return GrandParent_Parent.fromReference( T, S, - jni.Jni.accessors.newObjectWithArgs(_class.reference.pointer, _id_new0, - [$parent.reference.pointer, newValue.reference.pointer]).object); + _id_new0(_class, referenceType, + [$parent.reference.pointer, newValue.reference.pointer])); } } @@ -1335,8 +1274,8 @@ final class $GrandParent_ParentType<$T extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;"; @override - GrandParent_Parent<$T, $S> fromRef(jni.JObjectPtr ref) => - GrandParent_Parent.fromRef(T, S, ref); + GrandParent_Parent<$T, $S> fromReference(jni.JReference reference) => + GrandParent_Parent.fromReference(T, S, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1366,13 +1305,13 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, final jni.JObjType<$S> S; final jni.JObjType<$U> U; - GrandParent_StaticParent_Child.fromRef( + GrandParent_StaticParent_Child.fromReference( this.S, this.U, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/GrandParent$StaticParent$Child"); /// The type which includes information such as the signature of this class. @@ -1387,44 +1326,35 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, ); } - static final _id_parentValue = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_parentValue = _class.instanceFieldId( r"parentValue", r"Ljava/lang/Object;", ); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - $S get parentValue => S.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_parentValue, jni.JniCallType.objectType) - .object); + $S get parentValue => _id_parentValue.get(this, S); /// from: public S parentValue /// The returned object must be released after use, by calling the [release] method. - set parentValue($S value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_parentValue, value.reference.pointer); + set parentValue($S value) => _id_parentValue.set(this, S, value); - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public U value /// The returned object must be released after use, by calling the [release] method. - $U get value => U.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $U get value => _id_value.get(this, U); /// from: public U value /// The returned object must be released after use, by calling the [release] method. - set value($U value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($U value) => _id_value.set(this, U, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;Ljava/lang/Object;Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;Ljava/lang/Object;Ljava/lang/Object;)V", + ); /// from: public void (com.github.dart_lang.jnigen.generics.GrandParent$StaticParent $parent, S parentValue, U value) /// The returned object must be released after use, by calling the [release] method. @@ -1442,15 +1372,14 @@ class GrandParent_StaticParent_Child<$S extends jni.JObject, U ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$U>; - return GrandParent_StaticParent_Child.fromRef( + return GrandParent_StaticParent_Child.fromReference( S, U, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, [ + _id_new0(_class, referenceType, [ $parent.reference.pointer, parentValue.reference.pointer, value.reference.pointer - ]).object); + ])); } } @@ -1470,8 +1399,9 @@ final class $GrandParent_StaticParent_ChildType<$S extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent$Child;"; @override - GrandParent_StaticParent_Child<$S, $U> fromRef(jni.JObjectPtr ref) => - GrandParent_StaticParent_Child.fromRef(S, U, ref); + GrandParent_StaticParent_Child<$S, $U> fromReference( + jni.JReference reference) => + GrandParent_StaticParent_Child.fromReference(S, U, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1498,12 +1428,12 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { final jni.JObjType<$S> S; - GrandParent_StaticParent.fromRef( + GrandParent_StaticParent.fromReference( this.S, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/GrandParent$StaticParent"); /// The type which includes information such as the signature of this class. @@ -1515,25 +1445,22 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { ); } - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public S value /// The returned object must be released after use, by calling the [release] method. - $S get value => S.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $S get value => _id_value.get(this, S); /// from: public S value /// The returned object must be released after use, by calling the [release] method. - set value($S value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($S value) => _id_value.set(this, S, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"", r"(Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Ljava/lang/Object;)V", + ); /// from: public void (S value) /// The returned object must be released after use, by calling the [release] method. @@ -1544,10 +1471,8 @@ class GrandParent_StaticParent<$S extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$S>; - return GrandParent_StaticParent.fromRef( - S, - jni.Jni.accessors.newObjectWithArgs(_class.reference.pointer, _id_new0, - [value.reference.pointer]).object); + return GrandParent_StaticParent.fromReference( + S, _id_new0(_class, referenceType, [value.reference.pointer])); } } @@ -1564,8 +1489,8 @@ final class $GrandParent_StaticParentType<$S extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;"; @override - GrandParent_StaticParent<$S> fromRef(jni.JObjectPtr ref) => - GrandParent_StaticParent.fromRef(S, ref); + GrandParent_StaticParent<$S> fromReference(jni.JReference reference) => + GrandParent_StaticParent.fromReference(S, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1591,13 +1516,13 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - GrandParent.fromRef( + GrandParent.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/GrandParent"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/GrandParent"); /// The type which includes information such as the signature of this class. static $GrandParentType<$T> type<$T extends jni.JObject>( @@ -1608,25 +1533,22 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { ); } - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public T value /// The returned object must be released after use, by calling the [release] method. - $T get value => T.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $T get value => _id_value.get(this, T); /// from: public T value /// The returned object must be released after use, by calling the [release] method. - set value($T value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($T value) => _id_value.set(this, T, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"", r"(Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Ljava/lang/Object;)V", + ); /// from: public void (T value) /// The returned object must be released after use, by calling the [release] method. @@ -1637,29 +1559,28 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$T>; - return GrandParent.fromRef( - T, - jni.Jni.accessors.newObjectWithArgs(_class.reference.pointer, _id_new0, - [value.reference.pointer]).object); + return GrandParent.fromReference( + T, _id_new0(_class, referenceType, [value.reference.pointer])); } - static final _id_stringParent = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"stringParent", - r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;"); + static final _id_stringParent = _class.instanceMethodId( + r"stringParent", + r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;", + ); /// from: public com.github.dart_lang.jnigen.generics.GrandParent.Parent stringParent() /// The returned object must be released after use, by calling the [release] method. GrandParent_Parent stringParent() { - return const $GrandParent_ParentType(jni.JObjectType(), jni.JStringType()) - .fromRef(jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_stringParent, jni.JniCallType.objectType, []).object); + return _id_stringParent( + this, + const $GrandParent_ParentType(jni.JObjectType(), jni.JStringType()), + []); } - static final _id_varParent = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"varParent", - r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;"); + static final _id_varParent = _class.instanceMethodId( + r"varParent", + r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/GrandParent$Parent;", + ); /// from: public com.github.dart_lang.jnigen.generics.GrandParent.Parent varParent(S nestedValue) /// The returned object must be released after use, by calling the [release] method. @@ -1670,31 +1591,28 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ nestedValue.$type, ]) as jni.JObjType<$S>; - return $GrandParent_ParentType(const jni.JObjectType(), S).fromRef( - jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_varParent, - jni.JniCallType.objectType, - [nestedValue.reference.pointer]).object); + return _id_varParent( + this, + $GrandParent_ParentType(const jni.JObjectType(), S), + [nestedValue.reference.pointer]); } - static final _id_stringStaticParent = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"stringStaticParent", - r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;"); + static final _id_stringStaticParent = _class.staticMethodId( + r"stringStaticParent", + r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;", + ); /// from: static public com.github.dart_lang.jnigen.generics.GrandParent.StaticParent stringStaticParent() /// The returned object must be released after use, by calling the [release] method. static GrandParent_StaticParent stringStaticParent() { - return const $GrandParent_StaticParentType(jni.JStringType()).fromRef( - jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_stringStaticParent, jni.JniCallType.objectType, []).object); + return _id_stringStaticParent( + _class, const $GrandParent_StaticParentType(jni.JStringType()), []); } - static final _id_varStaticParent = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"varStaticParent", - r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;"); + static final _id_varStaticParent = _class.staticMethodId( + r"varStaticParent", + r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;", + ); /// from: static public com.github.dart_lang.jnigen.generics.GrandParent.StaticParent varStaticParent(S value) /// The returned object must be released after use, by calling the [release] method. @@ -1705,22 +1623,20 @@ class GrandParent<$T extends jni.JObject> extends jni.JObject { S ??= jni.lowestCommonSuperType([ value.$type, ]) as jni.JObjType<$S>; - return $GrandParent_StaticParentType(S).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_varStaticParent, - jni.JniCallType.objectType, [value.reference.pointer]).object); + return _id_varStaticParent( + _class, $GrandParent_StaticParentType(S), [value.reference.pointer]); } - static final _id_staticParentWithSameType = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"staticParentWithSameType", - r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;"); + static final _id_staticParentWithSameType = _class.instanceMethodId( + r"staticParentWithSameType", + r"()Lcom/github/dart_lang/jnigen/generics/GrandParent$StaticParent;", + ); /// from: public com.github.dart_lang.jnigen.generics.GrandParent.StaticParent staticParentWithSameType() /// The returned object must be released after use, by calling the [release] method. GrandParent_StaticParent<$T> staticParentWithSameType() { - return $GrandParent_StaticParentType(T).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_staticParentWithSameType, - jni.JniCallType.objectType, []).object); + return _id_staticParentWithSameType( + this, $GrandParent_StaticParentType(T), []); } } @@ -1736,7 +1652,8 @@ final class $GrandParentType<$T extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/GrandParent;"; @override - GrandParent<$T> fromRef(jni.JObjectPtr ref) => GrandParent.fromRef(T, ref); + GrandParent<$T> fromReference(jni.JReference reference) => + GrandParent.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1764,14 +1681,14 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> final jni.JObjType<$K> K; final jni.JObjType<$V> V; - MyMap_MyEntry.fromRef( + MyMap_MyEntry.fromReference( this.K, this.V, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/MyMap$MyEntry"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/MyMap$MyEntry"); /// The type which includes information such as the signature of this class. static $MyMap_MyEntryType<$K, $V> @@ -1785,44 +1702,35 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> ); } - static final _id_key = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_key = _class.instanceFieldId( r"key", r"Ljava/lang/Object;", ); /// from: public K key /// The returned object must be released after use, by calling the [release] method. - $K get key => K.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_key, jni.JniCallType.objectType) - .object); + $K get key => _id_key.get(this, K); /// from: public K key /// The returned object must be released after use, by calling the [release] method. - set key($K value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_key, value.reference.pointer); + set key($K value) => _id_key.set(this, K, value); - static final _id_value = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_value = _class.instanceFieldId( r"value", r"Ljava/lang/Object;", ); /// from: public V value /// The returned object must be released after use, by calling the [release] method. - $V get value => V.fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_value, jni.JniCallType.objectType) - .object); + $V get value => _id_value.get(this, V); /// from: public V value /// The returned object must be released after use, by calling the [release] method. - set value($V value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_value, value.reference.pointer); + set value($V value) => _id_value.set(this, V, value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/generics/MyMap;Ljava/lang/Object;Ljava/lang/Object;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/generics/MyMap;Ljava/lang/Object;Ljava/lang/Object;)V", + ); /// from: public void (com.github.dart_lang.jnigen.generics.MyMap $parent, K key, V value) /// The returned object must be released after use, by calling the [release] method. @@ -1841,15 +1749,14 @@ class MyMap_MyEntry<$K extends jni.JObject, $V extends jni.JObject> value.$type, ($parent.$type as $MyMapType).V, ]) as jni.JObjType<$V>; - return MyMap_MyEntry.fromRef( + return MyMap_MyEntry.fromReference( K, V, - jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new0, [ + _id_new0(_class, referenceType, [ $parent.reference.pointer, key.reference.pointer, value.reference.pointer - ]).object); + ])); } } @@ -1868,8 +1775,8 @@ final class $MyMap_MyEntryType<$K extends jni.JObject, $V extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/MyMap$MyEntry;"; @override - MyMap_MyEntry<$K, $V> fromRef(jni.JObjectPtr ref) => - MyMap_MyEntry.fromRef(K, V, ref); + MyMap_MyEntry<$K, $V> fromReference(jni.JReference reference) => + MyMap_MyEntry.fromReference(K, V, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -1898,14 +1805,14 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> final jni.JObjType<$K> K; final jni.JObjType<$V> V; - MyMap.fromRef( + MyMap.fromReference( this.K, this.V, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/MyMap"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/MyMap"); /// The type which includes information such as the signature of this class. static $MyMapType<$K, $V> @@ -1919,8 +1826,9 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> ); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. @@ -1928,31 +1836,26 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> required jni.JObjType<$K> K, required jni.JObjType<$V> V, }) { - return MyMap.fromRef( - K, - V, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return MyMap.fromReference(K, V, _id_new0(_class, referenceType, [])); } - static final _id_get0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"get", - r"(Ljava/lang/Object;)Ljava/lang/Object;"); + static final _id_get0 = _class.instanceMethodId( + r"get", + r"(Ljava/lang/Object;)Ljava/lang/Object;", + ); /// from: public V get(K key) /// The returned object must be released after use, by calling the [release] method. $V get0( $K key, ) { - return V.fromRef(jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_get0, jni.JniCallType.objectType, [key.reference.pointer]).object); + return _id_get0(this, V, [key.reference.pointer]); } - static final _id_put = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"put", - r"(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;"); + static final _id_put = _class.instanceMethodId( + r"put", + r"(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", + ); /// from: public V put(K key, V value) /// The returned object must be released after use, by calling the [release] method. @@ -1960,25 +1863,22 @@ class MyMap<$K extends jni.JObject, $V extends jni.JObject> $K key, $V value, ) { - return V.fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_put, - jni.JniCallType.objectType, - [key.reference.pointer, value.reference.pointer]).object); + return _id_put(this, V, [key.reference.pointer, value.reference.pointer]); } - static final _id_entryStack = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"entryStack", - r"()Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_entryStack = _class.instanceMethodId( + r"entryStack", + r"()Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: public com.github.dart_lang.jnigen.generics.MyStack.MyEntry> entryStack() /// The returned object must be released after use, by calling the [release] method. MyStack> entryStack() { - return const $MyStackType( - $MyMap_MyEntryType(jni.JObjectType(), jni.JObjectType())) - .fromRef(jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_entryStack, jni.JniCallType.objectType, []).object); + return _id_entryStack( + this, + const $MyStackType( + $MyMap_MyEntryType(jni.JObjectType(), jni.JObjectType())), + []); } } @@ -1996,7 +1896,8 @@ final class $MyMapType<$K extends jni.JObject, $V extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/MyMap;"; @override - MyMap<$K, $V> fromRef(jni.JObjectPtr ref) => MyMap.fromRef(K, V, ref); + MyMap<$K, $V> fromReference(jni.JReference reference) => + MyMap.fromReference(K, V, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2023,13 +1924,13 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - MyStack.fromRef( + MyStack.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/MyStack"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/MyStack"); /// The type which includes information such as the signature of this class. static $MyStackType<$T> type<$T extends jni.JObject>( @@ -2040,24 +1941,22 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { ); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory MyStack({ required jni.JObjType<$T> T, }) { - return MyStack.fromRef( - T, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return MyStack.fromReference(T, _id_new0(_class, referenceType, [])); } - static final _id_fromArray = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"fromArray", - r"([Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_fromArray = _class.staticMethodId( + r"fromArray", + r"([Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: static public com.github.dart_lang.jnigen.generics.MyStack fromArray(T[] arr) /// The returned object must be released after use, by calling the [release] method. @@ -2068,18 +1967,13 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ ((arr.$type as jni.JArrayType).elementType as jni.JObjType), ]) as jni.JObjType<$T>; - return $MyStackType(T).fromRef(jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_fromArray, - jni.JniCallType.objectType, - [arr.reference.pointer]).object); + return _id_fromArray(_class, $MyStackType(T), [arr.reference.pointer]); } - static final _id_fromArrayOfArrayOfGrandParents = jni.Jni.accessors - .getStaticMethodIDOf( - _class.reference.pointer, - r"fromArrayOfArrayOfGrandParents", - r"([[Lcom/github/dart_lang/jnigen/generics/GrandParent;)Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_fromArrayOfArrayOfGrandParents = _class.staticMethodId( + r"fromArrayOfArrayOfGrandParents", + r"([[Lcom/github/dart_lang/jnigen/generics/GrandParent;)Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: static public com.github.dart_lang.jnigen.generics.MyStack fromArrayOfArrayOfGrandParents(com.github.dart_lang.jnigen.generics.GrandParent[][] arr) /// The returned object must be released after use, by calling the [release] method. @@ -2093,33 +1987,27 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { .elementType as jni.JObjType) as $GrandParentType) .T, ]) as jni.JObjType<$S>; - return $MyStackType(S).fromRef(jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_fromArrayOfArrayOfGrandParents, - jni.JniCallType.objectType, - [arr.reference.pointer]).object); + return _id_fromArrayOfArrayOfGrandParents( + _class, $MyStackType(S), [arr.reference.pointer]); } - static final _id_of = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"of", - r"()Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_of = _class.staticMethodId( + r"of", + r"()Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: static public com.github.dart_lang.jnigen.generics.MyStack of() /// The returned object must be released after use, by calling the [release] method. static MyStack<$T> of<$T extends jni.JObject>({ required jni.JObjType<$T> T, }) { - return $MyStackType(T).fromRef(jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_of, - jni.JniCallType.objectType, []).object); + return _id_of(_class, $MyStackType(T), []); } - static final _id_of1 = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"of", - r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_of1 = _class.staticMethodId( + r"of", + r"(Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: static public com.github.dart_lang.jnigen.generics.MyStack of(T obj) /// The returned object must be released after use, by calling the [release] method. @@ -2130,17 +2018,13 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { T ??= jni.lowestCommonSuperType([ obj.$type, ]) as jni.JObjType<$T>; - return $MyStackType(T).fromRef(jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_of1, - jni.JniCallType.objectType, - [obj.reference.pointer]).object); + return _id_of1(_class, $MyStackType(T), [obj.reference.pointer]); } - static final _id_of2 = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"of", - r"(Ljava/lang/Object;Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;"); + static final _id_of2 = _class.staticMethodId( + r"of", + r"(Ljava/lang/Object;Ljava/lang/Object;)Lcom/github/dart_lang/jnigen/generics/MyStack;", + ); /// from: static public com.github.dart_lang.jnigen.generics.MyStack of(T obj, T obj2) /// The returned object must be released after use, by calling the [release] method. @@ -2153,41 +2037,41 @@ class MyStack<$T extends jni.JObject> extends jni.JObject { obj2.$type, obj.$type, ]) as jni.JObjType<$T>; - return $MyStackType(T).fromRef(jni.Jni.accessors.callStaticMethodWithArgs( - _class.reference.pointer, - _id_of2, - jni.JniCallType.objectType, - [obj.reference.pointer, obj2.reference.pointer]).object); + return _id_of2(_class, $MyStackType(T), + [obj.reference.pointer, obj2.reference.pointer]); } - static final _id_push = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"push", r"(Ljava/lang/Object;)V"); + static final _id_push = _class.instanceMethodId( + r"push", + r"(Ljava/lang/Object;)V", + ); /// from: public void push(T item) void push( $T item, ) { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, _id_push, - jni.JniCallType.voidType, [item.reference.pointer]).check(); + _id_push(this, const jni.jvoidType(), [item.reference.pointer]); } - static final _id_pop = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"pop", r"()Ljava/lang/Object;"); + static final _id_pop = _class.instanceMethodId( + r"pop", + r"()Ljava/lang/Object;", + ); /// from: public T pop() /// The returned object must be released after use, by calling the [release] method. $T pop() { - return T.fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_pop, jni.JniCallType.objectType, []).object); + return _id_pop(this, T, []); } - static final _id_size = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"size", r"()I"); + static final _id_size = _class.instanceMethodId( + r"size", + r"()I", + ); /// from: public int size() int size() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_size, jni.JniCallType.intType, []).integer; + return _id_size(this, const jni.jintType(), []); } } @@ -2203,7 +2087,8 @@ final class $MyStackType<$T extends jni.JObject> String get signature => r"Lcom/github/dart_lang/jnigen/generics/MyStack;"; @override - MyStack<$T> fromRef(jni.JObjectPtr ref) => MyStack.fromRef(T, ref); + MyStack<$T> fromReference(jni.JReference reference) => + MyStack.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2229,12 +2114,12 @@ class StringKeyedMap<$V extends jni.JObject> extends MyMap { final jni.JObjType<$V> V; - StringKeyedMap.fromRef( + StringKeyedMap.fromReference( this.V, - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), V, ref); + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), V, reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/StringKeyedMap"); /// The type which includes information such as the signature of this class. @@ -2246,18 +2131,16 @@ class StringKeyedMap<$V extends jni.JObject> extends MyMap { ); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringKeyedMap({ required jni.JObjType<$V> V, }) { - return StringKeyedMap.fromRef( - V, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return StringKeyedMap.fromReference(V, _id_new0(_class, referenceType, [])); } } @@ -2274,8 +2157,8 @@ final class $StringKeyedMapType<$V extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/StringKeyedMap;"; @override - StringKeyedMap<$V> fromRef(jni.JObjectPtr ref) => - StringKeyedMap.fromRef(V, ref); + StringKeyedMap<$V> fromReference(jni.JReference reference) => + StringKeyedMap.fromReference(V, reference); @override jni.JObjType get superType => $MyMapType(const jni.JStringType(), V); @@ -2299,23 +2182,23 @@ class StringStack extends MyStack { @override late final jni.JObjType $type = type; - StringStack.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), ref); + StringStack.fromReference( + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/StringStack"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/StringStack"); /// The type which includes information such as the signature of this class. static const type = $StringStackType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringStack() { - return StringStack.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return StringStack.fromReference(_id_new0(_class, referenceType, [])); } } @@ -2326,7 +2209,8 @@ final class $StringStackType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/generics/StringStack;"; @override - StringStack fromRef(jni.JObjectPtr ref) => StringStack.fromRef(ref); + StringStack fromReference(jni.JReference reference) => + StringStack.fromReference(reference); @override jni.JObjType get superType => const $MyStackType(jni.JStringType()); @@ -2350,12 +2234,12 @@ class StringValuedMap<$K extends jni.JObject> extends MyMap<$K, jni.JString> { final jni.JObjType<$K> K; - StringValuedMap.fromRef( + StringValuedMap.fromReference( this.K, - jni.JObjectPtr ref, - ) : super.fromRef(K, const jni.JStringType(), ref); + jni.JReference reference, + ) : super.fromReference(K, const jni.JStringType(), reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/StringValuedMap"); /// The type which includes information such as the signature of this class. @@ -2367,18 +2251,17 @@ class StringValuedMap<$K extends jni.JObject> extends MyMap<$K, jni.JString> { ); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringValuedMap({ required jni.JObjType<$K> K, }) { - return StringValuedMap.fromRef( - K, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return StringValuedMap.fromReference( + K, _id_new0(_class, referenceType, [])); } } @@ -2395,8 +2278,8 @@ final class $StringValuedMapType<$K extends jni.JObject> r"Lcom/github/dart_lang/jnigen/generics/StringValuedMap;"; @override - StringValuedMap<$K> fromRef(jni.JObjectPtr ref) => - StringValuedMap.fromRef(K, ref); + StringValuedMap<$K> fromReference(jni.JReference reference) => + StringValuedMap.fromReference(K, reference); @override jni.JObjType get superType => $MyMapType(K, const jni.JStringType()); @@ -2422,13 +2305,13 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { final jni.JObjType<$T> T; - MyInterface.fromRef( + MyInterface.fromReference( this.T, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/interfaces/MyInterface"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/interfaces/MyInterface"); /// The type which includes information such as the signature of this class. static $MyInterfaceType<$T> type<$T extends jni.JObject>( @@ -2439,56 +2322,49 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { ); } - static final _id_voidCallback = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"voidCallback", r"(Ljava/lang/String;)V"); + static final _id_voidCallback = _class.instanceMethodId( + r"voidCallback", + r"(Ljava/lang/String;)V", + ); /// from: public abstract void voidCallback(java.lang.String s) void voidCallback( jni.JString s, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_voidCallback, - jni.JniCallType.voidType, - [s.reference.pointer]).check(); + _id_voidCallback(this, const jni.jvoidType(), [s.reference.pointer]); } - static final _id_stringCallback = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"stringCallback", - r"(Ljava/lang/String;)Ljava/lang/String;"); + static final _id_stringCallback = _class.instanceMethodId( + r"stringCallback", + r"(Ljava/lang/String;)Ljava/lang/String;", + ); /// from: public abstract java.lang.String stringCallback(java.lang.String s) /// The returned object must be released after use, by calling the [release] method. jni.JString stringCallback( jni.JString s, ) { - return const jni.JStringType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_stringCallback, - jni.JniCallType.objectType, - [s.reference.pointer]).object); + return _id_stringCallback( + this, const jni.JStringType(), [s.reference.pointer]); } - static final _id_varCallback = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"varCallback", - r"(Ljava/lang/Object;)Ljava/lang/Object;"); + static final _id_varCallback = _class.instanceMethodId( + r"varCallback", + r"(Ljava/lang/Object;)Ljava/lang/Object;", + ); /// from: public abstract T varCallback(T t) /// The returned object must be released after use, by calling the [release] method. $T varCallback( $T t, ) { - return T.fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_varCallback, - jni.JniCallType.objectType, - [t.reference.pointer]).object); + return _id_varCallback(this, T, [t.reference.pointer]); } - static final _id_manyPrimitives = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"manyPrimitives", r"(IZCD)J"); + static final _id_manyPrimitives = _class.instanceMethodId( + r"manyPrimitives", + r"(IZCD)J", + ); /// from: public abstract long manyPrimitives(int a, boolean b, char c, double d) int manyPrimitives( @@ -2497,11 +2373,8 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { int c, double d, ) { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_manyPrimitives, - jni.JniCallType.longType, - [jni.JValueInt(a), b ? 1 : 0, jni.JValueChar(c), d]).long; + return _id_manyPrimitives(this, const jni.jlongType(), + [jni.JValueInt(a), b ? 1 : 0, jni.JValueChar(c), d]); } /// Maps a specific port to the implemented interface. @@ -2587,7 +2460,7 @@ class MyInterface<$T extends jni.JObject> extends jni.JObject { $MyInterfaceImpl<$T> $impl, ) { final $p = ReceivePort(); - final $x = MyInterface.fromRef( + final $x = MyInterface.fromReference( $impl.T, ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.interfaces.MyInterface", @@ -2680,7 +2553,8 @@ final class $MyInterfaceType<$T extends jni.JObject> r"Lcom/github/dart_lang/jnigen/interfaces/MyInterface;"; @override - MyInterface<$T> fromRef(jni.JObjectPtr ref) => MyInterface.fromRef(T, ref); + MyInterface<$T> fromReference(jni.JReference reference) => + MyInterface.fromReference(T, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2704,29 +2578,30 @@ class MyInterfaceConsumer extends jni.JObject { @override late final jni.JObjType $type = type; - MyInterfaceConsumer.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyInterfaceConsumer.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/interfaces/MyInterfaceConsumer"); /// The type which includes information such as the signature of this class. static const type = $MyInterfaceConsumerType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory MyInterfaceConsumer() { - return MyInterfaceConsumer.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return MyInterfaceConsumer.fromReference( + _id_new0(_class, referenceType, [])); } - static final _id_consumeOnAnotherThread = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"consumeOnAnotherThread", - r"(Lcom/github/dart_lang/jnigen/interfaces/MyInterface;Ljava/lang/String;IZCDLjava/lang/Object;)V"); + static final _id_consumeOnAnotherThread = _class.staticMethodId( + r"consumeOnAnotherThread", + r"(Lcom/github/dart_lang/jnigen/interfaces/MyInterface;Ljava/lang/String;IZCDLjava/lang/Object;)V", + ); /// from: static public void consumeOnAnotherThread(com.github.dart_lang.jnigen.interfaces.MyInterface myInterface, java.lang.String s, int a, boolean b, char c, double d, T t) static void consumeOnAnotherThread<$T extends jni.JObject>( @@ -2743,8 +2618,7 @@ class MyInterfaceConsumer extends jni.JObject { t.$type, (myInterface.$type as $MyInterfaceType).T, ]) as jni.JObjType<$T>; - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_consumeOnAnotherThread, jni.JniCallType.voidType, [ + _id_consumeOnAnotherThread(_class, const jni.jvoidType(), [ myInterface.reference.pointer, s.reference.pointer, jni.JValueInt(a), @@ -2752,13 +2626,13 @@ class MyInterfaceConsumer extends jni.JObject { jni.JValueChar(c), d, t.reference.pointer - ]).check(); + ]); } - static final _id_consumeOnSameThread = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"consumeOnSameThread", - r"(Lcom/github/dart_lang/jnigen/interfaces/MyInterface;Ljava/lang/String;IZCDLjava/lang/Object;)V"); + static final _id_consumeOnSameThread = _class.staticMethodId( + r"consumeOnSameThread", + r"(Lcom/github/dart_lang/jnigen/interfaces/MyInterface;Ljava/lang/String;IZCDLjava/lang/Object;)V", + ); /// from: static public void consumeOnSameThread(com.github.dart_lang.jnigen.interfaces.MyInterface myInterface, java.lang.String s, int a, boolean b, char c, double d, T t) static void consumeOnSameThread<$T extends jni.JObject>( @@ -2775,8 +2649,7 @@ class MyInterfaceConsumer extends jni.JObject { t.$type, (myInterface.$type as $MyInterfaceType).T, ]) as jni.JObjType<$T>; - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_consumeOnSameThread, jni.JniCallType.voidType, [ + _id_consumeOnSameThread(_class, const jni.jvoidType(), [ myInterface.reference.pointer, s.reference.pointer, jni.JValueInt(a), @@ -2784,7 +2657,7 @@ class MyInterfaceConsumer extends jni.JObject { jni.JValueChar(c), d, t.reference.pointer - ]).check(); + ]); } } @@ -2796,8 +2669,8 @@ final class $MyInterfaceConsumerType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyInterfaceConsumer;"; @override - MyInterfaceConsumer fromRef(jni.JObjectPtr ref) => - MyInterfaceConsumer.fromRef(ref); + MyInterfaceConsumer fromReference(jni.JReference reference) => + MyInterfaceConsumer.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2820,22 +2693,23 @@ class MyRunnable extends jni.JObject { @override late final jni.JObjType $type = type; - MyRunnable.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyRunnable.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/interfaces/MyRunnable"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/interfaces/MyRunnable"); /// The type which includes information such as the signature of this class. static const type = $MyRunnableType(); - static final _id_run = - jni.Jni.accessors.getMethodIDOf(_class.reference.pointer, r"run", r"()V"); + static final _id_run = _class.instanceMethodId( + r"run", + r"()V", + ); /// from: public abstract void run() void run() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_run, jni.JniCallType.voidType, []).check(); + _id_run(this, const jni.jvoidType(), []); } /// Maps a specific port to the implemented interface. @@ -2884,7 +2758,7 @@ class MyRunnable extends jni.JObject { $MyRunnableImpl $impl, ) { final $p = ReceivePort(); - final $x = MyRunnable.fromRef( + final $x = MyRunnable.fromReference( ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.interfaces.MyRunnable", $p, @@ -2935,7 +2809,8 @@ final class $MyRunnableType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyRunnable;"; @override - MyRunnable fromRef(jni.JObjectPtr ref) => MyRunnable.fromRef(ref); + MyRunnable fromReference(jni.JReference reference) => + MyRunnable.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -2957,64 +2832,60 @@ class MyRunnableRunner extends jni.JObject { @override late final jni.JObjType $type = type; - MyRunnableRunner.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyRunnableRunner.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/interfaces/MyRunnableRunner"); /// The type which includes information such as the signature of this class. static const type = $MyRunnableRunnerType(); - static final _id_error = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_error = _class.instanceFieldId( r"error", r"Ljava/lang/Throwable;", ); /// from: public java.lang.Throwable error /// The returned object must be released after use, by calling the [release] method. - jni.JObject get error => const jni.JObjectType().fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_error, jni.JniCallType.objectType) - .object); + jni.JObject get error => _id_error.get(this, const jni.JObjectType()); /// from: public java.lang.Throwable error /// The returned object must be released after use, by calling the [release] method. - set error(jni.JObject value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_error, value.reference.pointer); + set error(jni.JObject value) => + _id_error.set(this, const jni.JObjectType(), value); - static final _id_new0 = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"", - r"(Lcom/github/dart_lang/jnigen/interfaces/MyRunnable;)V"); + static final _id_new0 = _class.constructorId( + r"(Lcom/github/dart_lang/jnigen/interfaces/MyRunnable;)V", + ); /// from: public void (com.github.dart_lang.jnigen.interfaces.MyRunnable runnable) /// The returned object must be released after use, by calling the [release] method. factory MyRunnableRunner( MyRunnable runnable, ) { - return MyRunnableRunner.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, - _id_new0, - [runnable.reference.pointer]).object); + return MyRunnableRunner.fromReference( + _id_new0(_class, referenceType, [runnable.reference.pointer])); } - static final _id_runOnSameThread = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"runOnSameThread", r"()V"); + static final _id_runOnSameThread = _class.instanceMethodId( + r"runOnSameThread", + r"()V", + ); /// from: public void runOnSameThread() void runOnSameThread() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_runOnSameThread, jni.JniCallType.voidType, []).check(); + _id_runOnSameThread(this, const jni.jvoidType(), []); } - static final _id_runOnAnotherThread = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"runOnAnotherThread", r"()V"); + static final _id_runOnAnotherThread = _class.instanceMethodId( + r"runOnAnotherThread", + r"()V", + ); /// from: public void runOnAnotherThread() void runOnAnotherThread() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_runOnAnotherThread, jni.JniCallType.voidType, []).check(); + _id_runOnAnotherThread(this, const jni.jvoidType(), []); } } @@ -3026,7 +2897,8 @@ final class $MyRunnableRunnerType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/interfaces/MyRunnableRunner;"; @override - MyRunnableRunner fromRef(jni.JObjectPtr ref) => MyRunnableRunner.fromRef(ref); + MyRunnableRunner fromReference(jni.JReference reference) => + MyRunnableRunner.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3049,41 +2921,39 @@ class JsonSerializable_Case extends jni.JObject { @override late final jni.JObjType $type = type; - JsonSerializable_Case.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonSerializable_Case.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/annotations/JsonSerializable$Case"); /// The type which includes information such as the signature of this class. static const type = $JsonSerializable_CaseType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;", + ); /// from: static public com.github.dart_lang.jnigen.annotations.JsonSerializable.Case[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($JsonSerializable_CaseType()).fromRef( - jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_values, jni.JniCallType.objectType, []).object); + return _id_values( + _class, const jni.JArrayType($JsonSerializable_CaseType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;", + ); /// from: static public com.github.dart_lang.jnigen.annotations.JsonSerializable.Case valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static JsonSerializable_Case valueOf( jni.JString name, ) { - return const $JsonSerializable_CaseType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf( + _class, const $JsonSerializable_CaseType(), [name.reference.pointer]); } } @@ -3096,8 +2966,8 @@ final class $JsonSerializable_CaseType r"Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;"; @override - JsonSerializable_Case fromRef(jni.JObjectPtr ref) => - JsonSerializable_Case.fromRef(ref); + JsonSerializable_Case fromReference(jni.JReference reference) => + JsonSerializable_Case.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3120,26 +2990,24 @@ class JsonSerializable extends jni.JObject { @override late final jni.JObjType $type = type; - JsonSerializable.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + JsonSerializable.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/annotations/JsonSerializable"); /// The type which includes information such as the signature of this class. static const type = $JsonSerializableType(); - static final _id_value = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"value", - r"()Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;"); + static final _id_value = _class.instanceMethodId( + r"value", + r"()Lcom/github/dart_lang/jnigen/annotations/JsonSerializable$Case;", + ); /// from: public abstract com.github.dart_lang.jnigen.annotations.JsonSerializable$Case value() /// The returned object must be released after use, by calling the [release] method. JsonSerializable_Case value() { - return const $JsonSerializable_CaseType().fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_value, - jni.JniCallType.objectType, []).object); + return _id_value(this, const $JsonSerializable_CaseType(), []); } /// Maps a specific port to the implemented interface. @@ -3192,7 +3060,7 @@ class JsonSerializable extends jni.JObject { $JsonSerializableImpl $impl, ) { final $p = ReceivePort(); - final $x = JsonSerializable.fromRef( + final $x = JsonSerializable.fromReference( ProtectedJniExtensions.newPortProxy( r"com.github.dart_lang.jnigen.annotations.JsonSerializable", $p, @@ -3243,7 +3111,8 @@ final class $JsonSerializableType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/annotations/JsonSerializable;"; @override - JsonSerializable fromRef(jni.JObjectPtr ref) => JsonSerializable.fromRef(ref); + JsonSerializable fromReference(jni.JReference reference) => + JsonSerializable.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3266,23 +3135,23 @@ class MyDataClass extends jni.JObject { @override late final jni.JObjType $type = type; - MyDataClass.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + MyDataClass.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/annotations/MyDataClass"); /// The type which includes information such as the signature of this class. static const type = $MyDataClassType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory MyDataClass() { - return MyDataClass.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return MyDataClass.fromReference(_id_new0(_class, referenceType, [])); } } @@ -3294,7 +3163,8 @@ final class $MyDataClassType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/annotations/MyDataClass;"; @override - MyDataClass fromRef(jni.JObjectPtr ref) => MyDataClass.fromRef(ref); + MyDataClass fromReference(jni.JReference reference) => + MyDataClass.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3316,41 +3186,37 @@ class Color extends jni.JObject { @override late final jni.JObjType $type = type; - Color.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Color.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/simple_package/Color"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/simple_package/Color"); /// The type which includes information such as the signature of this class. static const type = $ColorType(); - static final _id_values = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"values", - r"()[Lcom/github/dart_lang/jnigen/simple_package/Color;"); + static final _id_values = _class.staticMethodId( + r"values", + r"()[Lcom/github/dart_lang/jnigen/simple_package/Color;", + ); /// from: static public com.github.dart_lang.jnigen.simple_package.Color[] values() /// The returned object must be released after use, by calling the [release] method. static jni.JArray values() { - return const jni.JArrayType($ColorType()).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_values, - jni.JniCallType.objectType, []).object); + return _id_values(_class, const jni.JArrayType($ColorType()), []); } - static final _id_valueOf = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, - r"valueOf", - r"(Ljava/lang/String;)Lcom/github/dart_lang/jnigen/simple_package/Color;"); + static final _id_valueOf = _class.staticMethodId( + r"valueOf", + r"(Ljava/lang/String;)Lcom/github/dart_lang/jnigen/simple_package/Color;", + ); /// from: static public com.github.dart_lang.jnigen.simple_package.Color valueOf(java.lang.String name) /// The returned object must be released after use, by calling the [release] method. static Color valueOf( jni.JString name, ) { - return const $ColorType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, _id_valueOf, - jni.JniCallType.objectType, [name.reference.pointer]).object); + return _id_valueOf(_class, const $ColorType(), [name.reference.pointer]); } } @@ -3361,7 +3227,8 @@ final class $ColorType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/simple_package/Color;"; @override - Color fromRef(jni.JObjectPtr ref) => Color.fromRef(ref); + Color fromReference(jni.JReference reference) => + Color.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3383,39 +3250,41 @@ class Exceptions extends jni.JObject { @override late final jni.JObjType $type = type; - Exceptions.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Exceptions.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/simple_package/Exceptions"); /// The type which includes information such as the signature of this class. static const type = $ExceptionsType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Exceptions() { - return Exceptions.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Exceptions.fromReference(_id_new0(_class, referenceType, [])); } - static final _id_new1 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(F)V"); + static final _id_new1 = _class.constructorId( + r"(F)V", + ); /// from: public void (float x) /// The returned object must be released after use, by calling the [release] method. factory Exceptions.new1( double x, ) { - return Exceptions.fromRef(jni.Jni.accessors.newObjectWithArgs( - _class.reference.pointer, _id_new1, [jni.JValueFloat(x)]).object); + return Exceptions.fromReference( + _id_new1(_class, referenceType, [jni.JValueFloat(x)])); } - static final _id_new2 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"(IIIIII)V"); + static final _id_new2 = _class.constructorId( + r"(IIIIII)V", + ); /// from: public void (int a, int b, int c, int d, int e, int f) /// The returned object must be released after use, by calling the [release] method. @@ -3427,167 +3296,165 @@ class Exceptions extends jni.JObject { int e, int f, ) { - return Exceptions.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new2, [ + return Exceptions.fromReference(_id_new2(_class, referenceType, [ jni.JValueInt(a), jni.JValueInt(b), jni.JValueInt(c), jni.JValueInt(d), jni.JValueInt(e), jni.JValueInt(f) - ]).object); + ])); } - static final _id_staticObjectMethod = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"staticObjectMethod", r"()Ljava/lang/Object;"); + static final _id_staticObjectMethod = _class.staticMethodId( + r"staticObjectMethod", + r"()Ljava/lang/Object;", + ); /// from: static public java.lang.Object staticObjectMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JObject staticObjectMethod() { - return const jni.JObjectType().fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, - _id_staticObjectMethod, jni.JniCallType.objectType, []).object); + return _id_staticObjectMethod(_class, const jni.JObjectType(), []); } - static final _id_staticIntMethod = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"staticIntMethod", r"()I"); + static final _id_staticIntMethod = _class.staticMethodId( + r"staticIntMethod", + r"()I", + ); /// from: static public int staticIntMethod() static int staticIntMethod() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_staticIntMethod, jni.JniCallType.intType, []).integer; + return _id_staticIntMethod(_class, const jni.jintType(), []); } - static final _id_staticObjectArrayMethod = jni.Jni.accessors - .getStaticMethodIDOf(_class.reference.pointer, r"staticObjectArrayMethod", - r"()[Ljava/lang/Object;"); + static final _id_staticObjectArrayMethod = _class.staticMethodId( + r"staticObjectArrayMethod", + r"()[Ljava/lang/Object;", + ); /// from: static public java.lang.Object[] staticObjectArrayMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JArray staticObjectArrayMethod() { - return const jni.JArrayType(jni.JObjectType()).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs( - _class.reference.pointer, - _id_staticObjectArrayMethod, - jni.JniCallType.objectType, []).object); + return _id_staticObjectArrayMethod( + _class, const jni.JArrayType(jni.JObjectType()), []); } - static final _id_staticIntArrayMethod = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"staticIntArrayMethod", r"()[I"); + static final _id_staticIntArrayMethod = _class.staticMethodId( + r"staticIntArrayMethod", + r"()[I", + ); /// from: static public int[] staticIntArrayMethod() /// The returned object must be released after use, by calling the [release] method. static jni.JArray staticIntArrayMethod() { - return const jni.JArrayType(jni.jintType()).fromRef(jni.Jni.accessors - .callStaticMethodWithArgs(_class.reference.pointer, - _id_staticIntArrayMethod, jni.JniCallType.objectType, []).object); + return _id_staticIntArrayMethod( + _class, const jni.JArrayType(jni.jintType()), []); } - static final _id_objectMethod = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"objectMethod", r"()Ljava/lang/Object;"); + static final _id_objectMethod = _class.instanceMethodId( + r"objectMethod", + r"()Ljava/lang/Object;", + ); /// from: public java.lang.Object objectMethod() /// The returned object must be released after use, by calling the [release] method. jni.JObject objectMethod() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_objectMethod, - jni.JniCallType.objectType, []).object); + return _id_objectMethod(this, const jni.JObjectType(), []); } - static final _id_intMethod = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"intMethod", r"()I"); + static final _id_intMethod = _class.instanceMethodId( + r"intMethod", + r"()I", + ); /// from: public int intMethod() int intMethod() { - return jni.Jni.accessors.callMethodWithArgs( - reference.pointer, _id_intMethod, jni.JniCallType.intType, []).integer; + return _id_intMethod(this, const jni.jintType(), []); } - static final _id_objectArrayMethod = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"objectArrayMethod", r"()[Ljava/lang/Object;"); + static final _id_objectArrayMethod = _class.instanceMethodId( + r"objectArrayMethod", + r"()[Ljava/lang/Object;", + ); /// from: public java.lang.Object[] objectArrayMethod() /// The returned object must be released after use, by calling the [release] method. jni.JArray objectArrayMethod() { - return const jni.JArrayType(jni.JObjectType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_objectArrayMethod, - jni.JniCallType.objectType, []).object); + return _id_objectArrayMethod( + this, const jni.JArrayType(jni.JObjectType()), []); } - static final _id_intArrayMethod = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"intArrayMethod", r"()[I"); + static final _id_intArrayMethod = _class.instanceMethodId( + r"intArrayMethod", + r"()[I", + ); /// from: public int[] intArrayMethod() /// The returned object must be released after use, by calling the [release] method. jni.JArray intArrayMethod() { - return const jni.JArrayType(jni.jintType()).fromRef(jni.Jni.accessors - .callMethodWithArgs(reference.pointer, _id_intArrayMethod, - jni.JniCallType.objectType, []).object); + return _id_intArrayMethod(this, const jni.JArrayType(jni.jintType()), []); } - static final _id_throwNullPointerException = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"throwNullPointerException", r"()I"); + static final _id_throwNullPointerException = _class.instanceMethodId( + r"throwNullPointerException", + r"()I", + ); /// from: public int throwNullPointerException() int throwNullPointerException() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_throwNullPointerException, jni.JniCallType.intType, []).integer; + return _id_throwNullPointerException(this, const jni.jintType(), []); } - static final _id_throwFileNotFoundException = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"throwFileNotFoundException", - r"()Ljava/io/InputStream;"); + static final _id_throwFileNotFoundException = _class.instanceMethodId( + r"throwFileNotFoundException", + r"()Ljava/io/InputStream;", + ); /// from: public java.io.InputStream throwFileNotFoundException() /// The returned object must be released after use, by calling the [release] method. jni.JObject throwFileNotFoundException() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_throwFileNotFoundException, - jni.JniCallType.objectType, []).object); + return _id_throwFileNotFoundException(this, const jni.JObjectType(), []); } - static final _id_throwClassCastException = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, - r"throwClassCastException", - r"()Ljava/io/FileInputStream;"); + static final _id_throwClassCastException = _class.instanceMethodId( + r"throwClassCastException", + r"()Ljava/io/FileInputStream;", + ); /// from: public java.io.FileInputStream throwClassCastException() /// The returned object must be released after use, by calling the [release] method. jni.JObject throwClassCastException() { - return const jni.JObjectType().fromRef(jni.Jni.accessors.callMethodWithArgs( - reference.pointer, - _id_throwClassCastException, - jni.JniCallType.objectType, []).object); + return _id_throwClassCastException(this, const jni.JObjectType(), []); } - static final _id_throwArrayIndexException = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"throwArrayIndexException", r"()I"); + static final _id_throwArrayIndexException = _class.instanceMethodId( + r"throwArrayIndexException", + r"()I", + ); /// from: public int throwArrayIndexException() int throwArrayIndexException() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_throwArrayIndexException, jni.JniCallType.intType, []).integer; + return _id_throwArrayIndexException(this, const jni.jintType(), []); } - static final _id_throwArithmeticException = jni.Jni.accessors.getMethodIDOf( - _class.reference.pointer, r"throwArithmeticException", r"()I"); + static final _id_throwArithmeticException = _class.instanceMethodId( + r"throwArithmeticException", + r"()I", + ); /// from: public int throwArithmeticException() int throwArithmeticException() { - return jni.Jni.accessors.callMethodWithArgs(reference.pointer, - _id_throwArithmeticException, jni.JniCallType.intType, []).integer; + return _id_throwArithmeticException(this, const jni.jintType(), []); } - static final _id_throwLoremIpsum = jni.Jni.accessors.getStaticMethodIDOf( - _class.reference.pointer, r"throwLoremIpsum", r"()V"); + static final _id_throwLoremIpsum = _class.staticMethodId( + r"throwLoremIpsum", + r"()V", + ); /// from: static public void throwLoremIpsum() static void throwLoremIpsum() { - return jni.Jni.accessors.callStaticMethodWithArgs(_class.reference.pointer, - _id_throwLoremIpsum, jni.JniCallType.voidType, []).check(); + _id_throwLoremIpsum(_class, const jni.jvoidType(), []); } } @@ -3599,7 +3466,8 @@ final class $ExceptionsType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Exceptions;"; @override - Exceptions fromRef(jni.JObjectPtr ref) => Exceptions.fromRef(ref); + Exceptions fromReference(jni.JReference reference) => + Exceptions.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3621,132 +3489,104 @@ class Fields extends jni.JObject { @override late final jni.JObjType $type = type; - Fields.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Fields.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/simple_package/Fields"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/simple_package/Fields"); /// The type which includes information such as the signature of this class. static const type = $FieldsType(); - static final _id_amount = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_amount = _class.staticFieldId( r"amount", r"I", ); /// from: static public int amount - static int get amount => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_amount, jni.JniCallType.intType) - .integer; + static int get amount => _id_amount.get(_class, const jni.jintType()); /// from: static public int amount - static set amount(int value) => jni.Jni.env - .SetStaticIntField(_class.reference.pointer, _id_amount, value); + static set amount(int value) => + _id_amount.set(_class, const jni.jintType(), value); - static final _id_pi = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_pi = _class.staticFieldId( r"pi", r"D", ); /// from: static public double pi - static double get pi => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_pi, jni.JniCallType.doubleType) - .doubleFloat; + static double get pi => _id_pi.get(_class, const jni.jdoubleType()); /// from: static public double pi static set pi(double value) => - jni.Jni.env.SetStaticDoubleField(_class.reference.pointer, _id_pi, value); + _id_pi.set(_class, const jni.jdoubleType(), value); - static final _id_asterisk = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_asterisk = _class.staticFieldId( r"asterisk", r"C", ); /// from: static public char asterisk - static int get asterisk => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_asterisk, jni.JniCallType.charType) - .char; + static int get asterisk => _id_asterisk.get(_class, const jni.jcharType()); /// from: static public char asterisk - static set asterisk(int value) => jni.Jni.env - .SetStaticCharField(_class.reference.pointer, _id_asterisk, value); + static set asterisk(int value) => + _id_asterisk.set(_class, const jni.jcharType(), value); - static final _id_name = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_name = _class.staticFieldId( r"name", r"Ljava/lang/String;", ); /// from: static public java.lang.String name /// The returned object must be released after use, by calling the [release] method. - static jni.JString get name => - const jni.JStringType().fromRef(jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_name, jni.JniCallType.objectType) - .object); + static jni.JString get name => _id_name.get(_class, const jni.JStringType()); /// from: static public java.lang.String name /// The returned object must be released after use, by calling the [release] method. - static set name(jni.JString value) => jni.Jni.env.SetStaticObjectField( - _class.reference.pointer, _id_name, value.reference.pointer); + static set name(jni.JString value) => + _id_name.set(_class, const jni.JStringType(), value); - static final _id_i = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_i = _class.instanceFieldId( r"i", r"Ljava/lang/Integer;", ); /// from: public java.lang.Integer i /// The returned object must be released after use, by calling the [release] method. - jni.JInteger get i => const jni.JIntegerType().fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_i, jni.JniCallType.objectType) - .object); + jni.JInteger get i => _id_i.get(this, const jni.JIntegerType()); /// from: public java.lang.Integer i /// The returned object must be released after use, by calling the [release] method. - set i(jni.JInteger value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_i, value.reference.pointer); + set i(jni.JInteger value) => _id_i.set(this, const jni.JIntegerType(), value); - static final _id_trillion = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_trillion = _class.instanceFieldId( r"trillion", r"J", ); /// from: public long trillion - int get trillion => jni.Jni.accessors - .getField(reference.pointer, _id_trillion, jni.JniCallType.longType) - .long; + int get trillion => _id_trillion.get(this, const jni.jlongType()); /// from: public long trillion set trillion(int value) => - jni.Jni.env.SetLongField(reference.pointer, _id_trillion, value); + _id_trillion.set(this, const jni.jlongType(), value); - static final _id_isAchillesDead = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_isAchillesDead = _class.instanceFieldId( r"isAchillesDead", r"Z", ); /// from: public boolean isAchillesDead - bool get isAchillesDead => jni.Jni.accessors - .getField( - reference.pointer, _id_isAchillesDead, jni.JniCallType.booleanType) - .boolean; + bool get isAchillesDead => + _id_isAchillesDead.get(this, const jni.jbooleanType()); /// from: public boolean isAchillesDead - set isAchillesDead(bool value) => jni.Jni.env - .SetBooleanField(reference.pointer, _id_isAchillesDead, value ? 1 : 0); + set isAchillesDead(bool value) => + _id_isAchillesDead.set(this, const jni.jbooleanType(), value); - static final _id_bestFighterInGreece = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_bestFighterInGreece = _class.instanceFieldId( r"bestFighterInGreece", r"Ljava/lang/String;", ); @@ -3754,57 +3594,48 @@ class Fields extends jni.JObject { /// from: public java.lang.String bestFighterInGreece /// The returned object must be released after use, by calling the [release] method. jni.JString get bestFighterInGreece => - const jni.JStringType().fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_bestFighterInGreece, - jni.JniCallType.objectType) - .object); + _id_bestFighterInGreece.get(this, const jni.JStringType()); /// from: public java.lang.String bestFighterInGreece /// The returned object must be released after use, by calling the [release] method. - set bestFighterInGreece(jni.JString value) => jni.Jni.env.SetObjectField( - reference.pointer, _id_bestFighterInGreece, value.reference.pointer); + set bestFighterInGreece(jni.JString value) => + _id_bestFighterInGreece.set(this, const jni.JStringType(), value); - static final _id_random = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_random = _class.instanceFieldId( r"random", r"Ljava/util/Random;", ); /// from: public java.util.Random random /// The returned object must be released after use, by calling the [release] method. - jni.JObject get random => const jni.JObjectType().fromRef(jni.Jni.accessors - .getField(reference.pointer, _id_random, jni.JniCallType.objectType) - .object); + jni.JObject get random => _id_random.get(this, const jni.JObjectType()); /// from: public java.util.Random random /// The returned object must be released after use, by calling the [release] method. - set random(jni.JObject value) => jni.Jni.env - .SetObjectField(reference.pointer, _id_random, value.reference.pointer); + set random(jni.JObject value) => + _id_random.set(this, const jni.JObjectType(), value); - static final _id_euroSymbol = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_euroSymbol = _class.staticFieldId( r"euroSymbol", r"C", ); /// from: static public char euroSymbol - static int get euroSymbol => jni.Jni.accessors - .getStaticField( - _class.reference.pointer, _id_euroSymbol, jni.JniCallType.charType) - .char; + static int get euroSymbol => + _id_euroSymbol.get(_class, const jni.jcharType()); /// from: static public char euroSymbol - static set euroSymbol(int value) => jni.Jni.env - .SetStaticCharField(_class.reference.pointer, _id_euroSymbol, value); + static set euroSymbol(int value) => + _id_euroSymbol.set(_class, const jni.jcharType(), value); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Fields() { - return Fields.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Fields.fromReference(_id_new0(_class, referenceType, [])); } } @@ -3816,7 +3647,8 @@ final class $FieldsType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Fields;"; @override - Fields fromRef(jni.JObjectPtr ref) => Fields.fromRef(ref); + Fields fromReference(jni.JReference reference) => + Fields.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3838,57 +3670,49 @@ class Fields_Nested extends jni.JObject { @override late final jni.JObjType $type = type; - Fields_Nested.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(ref); + Fields_Nested.fromReference( + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/simple_package/Fields$Nested"); /// The type which includes information such as the signature of this class. static const type = $Fields_NestedType(); - static final _id_hundred = jni.Jni.accessors.getFieldIDOf( - _class.reference.pointer, + static final _id_hundred = _class.instanceFieldId( r"hundred", r"J", ); /// from: public long hundred - int get hundred => jni.Jni.accessors - .getField(reference.pointer, _id_hundred, jni.JniCallType.longType) - .long; + int get hundred => _id_hundred.get(this, const jni.jlongType()); /// from: public long hundred - set hundred(int value) => - jni.Jni.env.SetLongField(reference.pointer, _id_hundred, value); + set hundred(int value) => _id_hundred.set(this, const jni.jlongType(), value); - static final _id_BEST_GOD = jni.Jni.accessors.getStaticFieldIDOf( - _class.reference.pointer, + static final _id_BEST_GOD = _class.staticFieldId( r"BEST_GOD", r"Ljava/lang/String;", ); /// from: static public java.lang.String BEST_GOD /// The returned object must be released after use, by calling the [release] method. - static jni.JString get BEST_GOD => const jni.JStringType().fromRef(jni - .Jni.accessors - .getStaticField( - _class.reference.pointer, _id_BEST_GOD, jni.JniCallType.objectType) - .object); + static jni.JString get BEST_GOD => + _id_BEST_GOD.get(_class, const jni.JStringType()); /// from: static public java.lang.String BEST_GOD /// The returned object must be released after use, by calling the [release] method. - static set BEST_GOD(jni.JString value) => jni.Jni.env.SetStaticObjectField( - _class.reference.pointer, _id_BEST_GOD, value.reference.pointer); + static set BEST_GOD(jni.JString value) => + _id_BEST_GOD.set(_class, const jni.JStringType(), value); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory Fields_Nested() { - return Fields_Nested.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return Fields_Nested.fromReference(_id_new0(_class, referenceType, [])); } } @@ -3900,7 +3724,8 @@ final class $Fields_NestedType extends jni.JObjType { r"Lcom/github/dart_lang/jnigen/simple_package/Fields$Nested;"; @override - Fields_Nested fromRef(jni.JObjectPtr ref) => Fields_Nested.fromRef(ref); + Fields_Nested fromReference(jni.JReference reference) => + Fields_Nested.fromReference(reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -3927,13 +3752,13 @@ class GenericTypeParams<$S extends jni.JObject, $K extends jni.JObject> final jni.JObjType<$S> S; final jni.JObjType<$K> K; - GenericTypeParams.fromRef( + GenericTypeParams.fromReference( this.S, this.K, - jni.JObjectPtr ref, - ) : super.fromRef(ref); + jni.JReference reference, + ) : super.fromReference(reference); - static final _class = jni.Jni.findJClass( + static final _class = jni.JClass.forName( r"com/github/dart_lang/jnigen/generics/GenericTypeParams"); /// The type which includes information such as the signature of this class. @@ -3948,8 +3773,9 @@ class GenericTypeParams<$S extends jni.JObject, $K extends jni.JObject> ); } - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. @@ -3957,11 +3783,8 @@ class GenericTypeParams<$S extends jni.JObject, $K extends jni.JObject> required jni.JObjType<$S> S, required jni.JObjType<$K> K, }) { - return GenericTypeParams.fromRef( - S, - K, - jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return GenericTypeParams.fromReference( + S, K, _id_new0(_class, referenceType, [])); } } @@ -3980,8 +3803,8 @@ final class $GenericTypeParamsType<$S extends jni.JObject, r"Lcom/github/dart_lang/jnigen/generics/GenericTypeParams;"; @override - GenericTypeParams<$S, $K> fromRef(jni.JObjectPtr ref) => - GenericTypeParams.fromRef(S, K, ref); + GenericTypeParams<$S, $K> fromReference(jni.JReference reference) => + GenericTypeParams.fromReference(S, K, reference); @override jni.JObjType get superType => const jni.JObjectType(); @@ -4006,23 +3829,23 @@ class StringMap extends StringKeyedMap { @override late final jni.JObjType $type = type; - StringMap.fromRef( - jni.JObjectPtr ref, - ) : super.fromRef(const jni.JStringType(), ref); + StringMap.fromReference( + jni.JReference reference, + ) : super.fromReference(const jni.JStringType(), reference); static final _class = - jni.Jni.findJClass(r"com/github/dart_lang/jnigen/generics/StringMap"); + jni.JClass.forName(r"com/github/dart_lang/jnigen/generics/StringMap"); /// The type which includes information such as the signature of this class. static const type = $StringMapType(); - static final _id_new0 = jni.Jni.accessors - .getMethodIDOf(_class.reference.pointer, r"", r"()V"); + static final _id_new0 = _class.constructorId( + r"()V", + ); /// from: public void () /// The returned object must be released after use, by calling the [release] method. factory StringMap() { - return StringMap.fromRef(jni.Jni.accessors - .newObjectWithArgs(_class.reference.pointer, _id_new0, []).object); + return StringMap.fromReference(_id_new0(_class, referenceType, [])); } } @@ -4033,7 +3856,8 @@ final class $StringMapType extends jni.JObjType { String get signature => r"Lcom/github/dart_lang/jnigen/generics/StringMap;"; @override - StringMap fromRef(jni.JObjectPtr ref) => StringMap.fromRef(ref); + StringMap fromReference(jni.JReference reference) => + StringMap.fromReference(reference); @override jni.JObjType get superType => const $StringKeyedMapType(jni.JStringType()); diff --git a/pkgs/jnigen/test/simple_package_test/runtime_test_registrant.dart b/pkgs/jnigen/test/simple_package_test/runtime_test_registrant.dart index 629d95a400..c1761059d0 100644 --- a/pkgs/jnigen/test/simple_package_test/runtime_test_registrant.dart +++ b/pkgs/jnigen/test/simple_package_test/runtime_test_registrant.dart @@ -18,10 +18,13 @@ const trillion = 1024 * 1024 * 1024 * 1024; void _runJavaGC() { final managementFactory = - Jni.findJClass('java/lang/management/ManagementFactory'); - final bean = managementFactory.callStaticMethodByName( - 'getRuntimeMXBean', '()Ljava/lang/management/RuntimeMXBean;', []); - final pid = bean.callMethodByName('getPid', '()J', []); + JClass.forName('java/lang/management/ManagementFactory'); + final bean = managementFactory + .staticMethodId( + 'getRuntimeMXBean', '()Ljava/lang/management/RuntimeMXBean;') + .call(managementFactory, JObject.type, []); + final pid = + bean.jClass.instanceMethodId('getPid', '()J').call(bean, jlong.type, []); ProcessResult result; do { result = Process.runSync('jcmd', [pid.toString(), 'GC.run']); @@ -656,17 +659,23 @@ void registerTests(String groupName, TestRunnerCallback test) { expect( Jni.env.IsInstanceOf( runner.error.reference.pointer, - Jni.findClass('java/lang/reflect/UndeclaredThrowableException'), + JClass.forName('java/lang/reflect/UndeclaredThrowableException') + .reference + .pointer, ), isTrue, ); - final cause = runner.error.callMethodByName( - 'getCause', '()Ljava/lang/Throwable;', []); + final throwableClass = runner.error.jClass; + final cause = throwableClass + .instanceMethodId('getCause', '()Ljava/lang/Throwable;') + .call(runner.error, JObject.type, []); expect( Jni.env.IsInstanceOf( cause.reference.pointer, - Jni.findClass( - 'com/github/dart_lang/jni/PortProxy\$DartException'), + JClass.forName( + 'com/github/dart_lang/jni/PortProxy\$DartException') + .reference + .pointer, ), isTrue, );