native
native copied to clipboard
Dart packages related to FFI and native assets bundling.
Similar to https://github.com/dart-lang/native/issues/718 - it would be nice to have benchmarks to consult for various some non-trivial yet pretty common cases. For example, what is the performance of an FFI...
We have performance concerns for ffigen when run on large ObjC APIs, as the bindings can be >100k lines. We should add a benchmark that runs ffigen on one of...
Hi! Previously, i used `jni.BluetoothDevice.ACTION_SOMETHING_SOMETHING` static strings elegantly in `switch` statement, which made everything very elegant: ```dart void onReceive(jni.Context context, jni.Intent intent) { switch (intent.getAction().toDString()) { case jni.BluetoothAdapter.ACTION_STATE_CHANGED: final btState...
`_ObjCFinalizable` is the backing class for all ObjC objects and blocks, so this will mean all of ffigen's generated objects will also be sendable. Copy the approach in https://github.com/dart-lang/native/pull/1060
I'm trying to temporarily work around https://github.com/dart-lang/native/issues/1416 by excluding the classes that have the type problem, since I don't currently need them. I updated my config to: ``` exclude-all-by-default: true...
Currently there is asymmetry between hooks and runtime * the hooks use e.g. `NativeCodeAsset(package: ..., name: ...)` * the runtime use `@Native(assetId: '...')` we should remove this asymmetry by only...
Fixes https://github.com/dart-lang/native/issues/1419 --- - [x] I’ve reviewed the contributor guide and applied the relevant portions to this PR. Contribution guidelines: - See our [contributor guide](https://github.com/dart-lang/.github/blob/main/CONTRIBUTING.md) for general expectations for PRs....
**It seems that renaming dylibs is non-trivial on some OSes. So, we might want to make it an error to create dylibs with the same names. Either within one hook...
Not all APIs are available on all versions of iOS. There are annotations in Objective C for this, so we can turn that into version checks, and throw user friendly...
ObjC APIs can have version range annotations that say when they were introduced, and when they were deprecated. We should have a min/max target version, and only generate the API...