tree ec176aed5a759873523ae7119d03cf304e79bb6f
parent 37e2bab57d6c3cd905c00e27c232a68193e4c5c7
author stuartmorgan <stuartmorgan@google.com> 1673658962 -0800
committer GitHub <noreply@github.com> 1673658962 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJjwgJSCRBK7hj4Ov3rIwAAvq8IABRSpNluPYvqrb/pSy0dvOmV
 6aIa3dYJJclFVSJbIdoxyWkEncvVqvNSsyhHgD5dBI0KIX9i/m4ubUOn4kPvJ78C
 wv0L4/OI/QPGnz9AmaVhLjGj3cMwZ11+gjlREzoBRGeY6iKvY184zqCVoOhmUDzr
 PTn3crIhkW3SfCJl9kMGG6aAF0nvfHZgERn/bH39MDMvH+NXkDXX4LJ2Bfn/xpfl
 O8L9vanooQIHPQI09L6nYTVCKzkKEK7A4Pm7LEzUh3Dmq33NK+MPfgyuXM3oQmtF
 hHk48qNL0RmbE/pvmgm9LTCwo8kt5XvITFDUM28PHd5fHbTvWrRRClem0jJM/zk=
 =xFCU
 -----END PGP SIGNATURE-----
 

[pigeon] Fix C++ generator's handling of Flutter APIs (#3042)

* Add new APIs, unimplemented and unused

* Add Dart implementation

* Add multiple arity FlutterApi

* Add Dart unit tests for desired output format

* Enable the existing integration test

* Add units tests for callback format

* Adjust unit test expectations for error callback

* First-pass implementation; mostly untested

* Comment fix

* Add todo

* Minor fixes

* Fix compilation error in Swift from new pigeons

* Make new Maps string-keyed to avoid Swift error

* Update generation

* Update unit test for change

* Update C++ test plugin for API changes

* Fix type regression

* missing ;

* Drop string_view in Flutter API

* Unwind incorrect 'simplification' of custom classes

* Fix merge mistake

* Merge mistake

* Version bump

* Address review comments

* Fix Dart unit test compilation