Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@stuartmorgan-g
Copy link
Contributor

Adds a type that can hold any of the types corresponding to the Dart types
that are supported by the standard message channel codec. This provides
the foundation for adding standard message codec support for the C++
desktop shells (flutter/flutter#30670).

@chinmaygarde
Copy link
Contributor

Is this ready for review?

@stuartmorgan-g
Copy link
Contributor Author

Is this ready for review?

Yes, it's complete as is, with the actual standard codec support being a follow-up PR that I'll send out after this is in.

Copy link
Contributor

@chinmaygarde chinmaygarde left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this is because I am missing the context on how the actual encoding and decoding is done. But, I was expecting an Encodable with specializations (for an encode and decode respectively) for specific type traits. Specific specializations for std::is_arithmetic, std::is_null_pointer, std::is_array would then handle entire type classes. Obviously you could add more specializations as necessary.

But, I don't see why this wont work either. Your call.

@stuartmorgan-g
Copy link
Contributor Author

I was expecting an Encodable with specializations (for an encode and decode respectively) for specific type traits.

Resolved in offline discussion; this is solving a problem at a higher abstraction layer in the plugin APIs than the encoding/decoding details themselves (specifically, creating a way to represent heterogeneous List and Map objects coming from Dart).

@stuartmorgan-g stuartmorgan-g merged commit b819b62 into flutter:master Apr 16, 2019
@stuartmorgan-g stuartmorgan-g deleted the cpp-encodable-value branch April 16, 2019 23:33
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Apr 17, 2019
engine-flutter-autoroll added a commit to flutter/flutter that referenced this pull request Apr 17, 2019
…1168)

flutter/engine@db36d28...b819b62

git log db36d28..b819b62 --no-merges --oneline
b819b62 Variant type for C++ client wrapper (flutter/engine#8592)

The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff (garyq@google.com), and stop
the roller if necessary.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants