| // Copyright (c) 2022, 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. | |
| // ignore_for_file: invalid_export_of_internal_element | |
| /// This library exports the methods meant for use by generated code only, and | |
| /// not to be used directly. | |
| library; | |
| import 'dart:ffi' as ffi show Int32; | |
| import 'dart:ffi' hide Int32; | |
| // Exporting all the necessary bits for the generated bindings. | |
| export 'dart:ffi' | |
| show | |
| Double, | |
| Int64, | |
| NativeFunction, | |
| NativeFunctionPointer, | |
| NativePort, | |
| Pointer, | |
| VarArgs, | |
| Void, | |
| nullptr; | |
| export 'dart:isolate' show RawReceivePort, ReceivePort; | |
| export 'package:meta/meta.dart' show internal; | |
| export 'src/accessors.dart'; | |
| export 'src/jni.dart' show ProtectedJniExtensions; | |
| export 'src/jobject.dart' show $JObject$Type$; | |
| export 'src/jreference.dart'; | |
| export 'src/kotlin.dart' | |
| show | |
| KotlinContinuation, | |
| coroutineSingletonsClass, | |
| failureExceptionField, | |
| result$Class, | |
| result$FailureClass, | |
| resultValueField; | |
| export 'src/lang/jboolean.dart'; | |
| export 'src/lang/jbyte.dart'; | |
| export 'src/lang/jcharacter.dart'; | |
| export 'src/lang/jdouble.dart'; | |
| export 'src/lang/jfloat.dart'; | |
| export 'src/lang/jinteger.dart'; | |
| export 'src/lang/jlong.dart'; | |
| export 'src/lang/jnumber.dart'; | |
| export 'src/lang/jshort.dart'; | |
| export 'src/lang/jstring.dart'; | |
| export 'src/method_invocation.dart'; | |
| export 'src/nio/jbuffer.dart'; | |
| export 'src/nio/jbyte_buffer.dart'; | |
| export 'src/third_party/generated_bindings.dart' | |
| show JFieldIDPtr, JMethodIDPtr, JObjectPtr, JThrowablePtr, JniResult; | |
| export 'src/types.dart' show JTypeBase; | |
| export 'src/util/jiterator.dart'; | |
| export 'src/util/jlist.dart'; | |
| export 'src/util/jmap.dart'; | |
| export 'src/util/jset.dart'; | |
| export 'src/version_check.dart'; | |
| /// Temporary fix for the macOS arm64 varargs problem. | |
| /// | |
| /// This integer type is `Int32` on all architectures, other than macOS arm64. | |
| /// Where it is `Int64`. | |
| @AbiSpecificIntegerMapping({ | |
| Abi.androidArm: ffi.Int32(), | |
| Abi.androidArm64: ffi.Int32(), | |
| Abi.androidIA32: ffi.Int32(), | |
| Abi.androidX64: ffi.Int32(), | |
| Abi.androidRiscv64: ffi.Int32(), | |
| Abi.fuchsiaArm64: ffi.Int32(), | |
| Abi.fuchsiaX64: ffi.Int32(), | |
| Abi.fuchsiaRiscv64: ffi.Int32(), | |
| Abi.iosArm: ffi.Int32(), | |
| Abi.iosArm64: ffi.Int32(), | |
| Abi.iosX64: ffi.Int32(), | |
| Abi.linuxArm: ffi.Int32(), | |
| Abi.linuxArm64: ffi.Int32(), | |
| Abi.linuxIA32: ffi.Int32(), | |
| Abi.linuxX64: ffi.Int32(), | |
| Abi.linuxRiscv32: ffi.Int32(), | |
| Abi.linuxRiscv64: ffi.Int32(), | |
| Abi.macosArm64: Int64(), // <-- Only this is different. | |
| Abi.macosX64: ffi.Int32(), | |
| Abi.windowsArm64: ffi.Int32(), | |
| Abi.windowsIA32: ffi.Int32(), | |
| Abi.windowsX64: ffi.Int32(), | |
| }) | |
| final class Int32 extends AbiSpecificInteger { | |
| const Int32(); | |
| } |