Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1218)

Unified Diff: mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl

Issue 1635613002: [mojo-bindings] Support reuse of native enum classes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: do not generate validators for native-only enums Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl
index ebc6048c29253d881deb160df3c3e8209412c8a7..0285dac0614fb1dcaf313f602cef4644d31fa97f 100644
--- a/mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl
+++ b/mojo/public/tools/bindings/generators/cpp_templates/struct_macros.tmpl
@@ -149,11 +149,14 @@
if ({{input}}->header_.version < {{pf.min_version}})
break;
{%- endif %}
-{%- if kind|is_native_only_kind %}
+{%- if kind|is_native_only_kind and kind|is_struct_kind %}
if (!DeserializeNative_(
{{input}}->{{name}}.ptr, &{{output_field}}, {{context}})) {
{{success}} = false;
}
+{%- elif kind|is_native_only_kind and kind|is_enum_kind %}
+ {{output_field}} = static_cast<{{kind|cpp_wrapper_type}}>(
+ {{input}}->{{name}});
{%- elif kind|is_typemapped_kind %}
if (!{{kind|get_name_for_kind}}_SerializerTraits_<{{kind|cpp_wrapper_type}}>
::Deserialize(

Powered by Google App Engine
This is Rietveld 408576698