ffigen 16.1.0
ffigen: ^16.1.0 copied to clipboard
Generator for FFI bindings, using LibClang to parse C, Objective-C, and Swift files.
We analyzed this package 3 days ago, and awarded it 140 pub points (of a possible 160):
10/10 points: Provide a valid pubspec.yaml
Issue tracker URL doesn't exist.
At the time of the analysis https://github.com/dart-lang/native/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Affigen
was unreachable. Make sure that the website is reachable via HEAD
requests.
5/5 points: Provide a valid README.md
5/5 points: Provide a valid CHANGELOG.md
10/10 points: Use an OSI-approved license
Detected license: BSD-3-Clause
.
10/10 points: 20% or more of the public API has dartdoc comments
122 out of 138 API elements (88.4 %) have documentation comments.
Some symbols that are missing documentation: ffigen.DeclarationFilters
, ffigen.DeclarationFilters.DeclarationFilters
, ffigen.DeclarationFilters.excludeAll
, ffigen.DeclarationFilters.include
, ffigen.DeclarationFilters.includeAll
.
10/10 points: Package has an example
20/20 points: Supports 5 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)
-
✓ Android
-
✓ iOS
-
✓ Windows
-
✓ Linux
-
✓ macOS
These platforms are not supported:
Package not compatible with platform Web
Because:
package:ffigen/ffigen.dart
that imports:package:ffigen/src/ffigen.dart
that imports:package:ffigen/src/header_parser.dart
that imports:package:ffigen/src/header_parser/parser.dart
that imports:package:ffigen/src/header_parser/utils.dart
that imports:package:ffigen/src/header_parser/type_extractor/extractor.dart
that imports:package:ffigen/src/header_parser/type_extractor/cxtypekindmap.dart
that imports:package:ffigen/src/code_generator/imports.dart
that imports:package:ffigen/src/code_generator/writer.dart
that imports:package:ffigen/src/code_generator/utils.dart
that imports:package:ffigen/src/code_generator/type.dart
that imports:package:ffigen/src/visitor/ast.dart
that imports:package:ffigen/src/visitor/visitor.dart
that imports:package:ffigen/src/code_generator.dart
that imports:package:ffigen/src/code_generator/typealias.dart
that imports:package:ffigen/src/strings.dart
that imports:package:ffigen/src/header_parser/clang_bindings/clang_bindings.dart
that imports:dart:ffi
0/0 points: WASM compatibility
Package not compatible with runtime wasm
Because:
package:ffigen/ffigen.dart
that imports:package:ffigen/src/ffigen.dart
that imports:package:ffigen/src/header_parser.dart
that imports:package:ffigen/src/header_parser/parser.dart
that imports:package:ffigen/src/header_parser/utils.dart
that imports:package:ffigen/src/header_parser/type_extractor/extractor.dart
that imports:package:ffigen/src/header_parser/type_extractor/cxtypekindmap.dart
that imports:package:ffigen/src/code_generator/imports.dart
that imports:package:ffigen/src/code_generator/writer.dart
that imports:package:ffigen/src/code_generator/utils.dart
that imports:package:ffigen/src/code_generator/type.dart
that imports:package:ffigen/src/visitor/ast.dart
that imports:package:ffigen/src/visitor/visitor.dart
that imports:package:ffigen/src/code_generator.dart
that imports:package:ffigen/src/code_generator/typealias.dart
that imports:package:ffigen/src/strings.dart
that imports:package:ffigen/src/header_parser/clang_bindings/clang_bindings.dart
that imports:dart:ffi
This package is not compatible with runtime wasm
, and will not be rewarded full points in a future version of the scoring model.
See https://dart.dev/web/wasm for details.
40/50 points: code has no errors, warnings, lints, or formatting issues
INFO: Angle brackets will be interpreted as HTML.
lib/src/code_generator/func_type.dart:139:32
╷
139 │ /// Represents a NativeFunction<Function>.
│ ^^^^^^^^^^
╵
To reproduce make sure you are using the lints_core and run dart analyze lib/src/code_generator/func_type.dart
INFO: Angle brackets will be interpreted as HTML.
lib/src/header_parser/utils.dart:433:32
╷
433 │ /// Appends `<int>` to base. <int> is incremented on every call.
│ ^^^^^
╵
To reproduce make sure you are using the lints_core and run dart analyze lib/src/header_parser/utils.dart
0/10 points: All of the package dependencies are supported in the latest version
Package | Constraint | Compatible | Latest |
---|---|---|---|
args |
^2.6.0 |
2.6.0 | 2.6.0 |
cli_util |
^0.4.2 |
0.4.2 | 0.4.2 |
collection |
^1.18.0 |
1.19.1 | 1.19.1 |
dart_style |
^2.3.7 |
2.3.8 | 3.0.1 |
ffi |
^2.0.1 |
2.1.3 | 2.1.3 |
file |
^7.0.0 |
7.0.1 | 7.0.1 |
glob |
^2.0.0 |
2.1.3 | 2.1.3 |
logging |
^1.0.0 |
1.3.0 | 1.3.0 |
meta |
^1.11.0 |
1.16.0 | 1.16.0 |
package_config |
^2.1.0 |
2.1.1 | 2.1.1 |
path |
^1.8.0 |
1.9.1 | 1.9.1 |
pub_semver |
^2.1.4 |
2.1.5 | 2.1.5 |
quiver |
^3.0.0 |
3.2.2 | 3.2.2 |
yaml |
^3.0.0 |
3.1.3 | 3.1.3 |
yaml_edit |
^2.0.3 |
2.2.2 | 2.2.2 |
Transitive dependencies
Package | Constraint | Compatible | Latest |
---|---|---|---|
_fe_analyzer_shared |
- | 76.0.0 | 80.0.0 |
_macros |
- | 0.3.3 | 0.3.3 |
analyzer |
- | 6.11.0 | 7.3.0 |
async |
- | 2.13.0 | 2.13.0 |
boolean_selector |
- | 2.1.2 | 2.1.2 |
convert |
- | 3.1.2 | 3.1.2 |
crypto |
- | 3.0.6 | 3.0.6 |
macros |
- | 0.1.3-main.0 | 0.1.3-main.0 |
matcher |
- | 0.12.17 | 0.12.17 |
source_span |
- | 1.10.1 | 1.10.1 |
stack_trace |
- | 1.12.1 | 1.12.1 |
stream_channel |
- | 2.1.4 | 2.1.4 |
string_scanner |
- | 1.4.1 | 1.4.1 |
term_glyph |
- | 1.2.2 | 1.2.2 |
test_api |
- | 0.7.4 | 0.7.4 |
typed_data |
- | 1.4.0 | 1.4.0 |
watcher |
- | 1.1.1 | 1.1.1 |
To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides
.
The constraint `^2.3.7` on dart_style does not support the stable version `3.0.0`.
Try running dart pub upgrade --major-versions dart_style
to update the constraint.
10/10 points: Package supports latest stable Dart and Flutter SDKs
20/20 points: Compatible with dependency constraint lower bounds
pub downgrade
does not expose any static analysis error.
Analyzed with Pana 0.22.18
, Dart 3.7.0
.
Check the analysis log for details.