Skip to content

Commit

Permalink
Ffi enums (#1202)
Browse files Browse the repository at this point in the history
  • Loading branch information
Levi-Lesches authored Jun 14, 2024
1 parent 125af4a commit a44ef95
Show file tree
Hide file tree
Showing 12 changed files with 1,963 additions and 245 deletions.
9 changes: 5 additions & 4 deletions pkgs/ffigen/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@
- __Breaking change__: Code-gen the ObjC `id` type to `ObjCObjectBase` rather
than `NSObject`, since not all ObjC classes inherit from `NSObject`. Eg
`NSProxy`.
- __Breaking change__: Enums are now generated as real Dart enums, instead of
abstract classes. Since Dart enums cannot be empty, empty native enums are
generated as empty sealed classes. Native enum members with duplicate integer
values are handled properly, and are equal to each other in Dart as well.
- __Breaking change__: Native enums are now generated as real Dart enums, instead
of abstract classes with integer constants. Native enum members with the same
integer values are handled properly on the Dart side, and native functions
that use enums in their signatures now accept the generated enums on the Dart
side, instead of integer values.
- Rename ObjC interface methods that clash with type names. Fixes
https://github.com/dart-lang/native/issues/1007.
- __Breaking change__: Enum integer types are implementation-defined and not
Expand Down
Loading

0 comments on commit a44ef95

Please sign in to comment.