Objective-C on macOS

C on Linux

Flutter’s builtin platform-specific API support
doesn’t rely on code generation,
but rather on a flexible message passing style.
Alternatively, you can use the Pigeon
package for sending structured typesafe messages
with code generation:

The Flutter portion of the app sends messages to its host,
the non-Dart portion of the app, over a platform channel.

The host listens on the platform channel, and receives the message.
It then calls into any number of platform-specific APIs—using
the native programming language—and sends a response back to the
client, the Flutter portion of the app.