mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
The response APIs for method channels and event channels used pointers for optional parameters; this kept the API surface simple, but meant that they couldn't take rvalues. As a result, returning success values or error details often took an extra line, declaring a variable for the result just to have something to pass the address of. This converts them to using references, with function overloading to allow for optional parameters, so that values can be inlined. For now the pointer versions are still present, so that conversion can be done before it becomes a breaking change; they will be removed soon. Part of https://github.com/flutter/flutter/issues/63975
This code is intended to be built into plugins and applications to provide higher-level, C++ abstractions for interacting with the Flutter library. Over time, the goal is to move more of this code into the library in a way that provides a usable ABI (e.g., does not use standard library in the interfaces). Note that this wrapper is still in early stages. Expect significant churn in both the APIs and the structure of the wrapper (e.g., the exact set of files that need to be built).