Chromium Code Reviews| Index: mojo/public/tools/bindings/generators/dart_templates/union_definition.tmpl |
| diff --git a/mojo/public/tools/bindings/generators/dart_templates/union_definition.tmpl b/mojo/public/tools/bindings/generators/dart_templates/union_definition.tmpl |
| index 511201eb30da382ae42d4f2506a3ab71108972fa..e0d67e9a4df8bd3cb225ec6fe839fdd20f73cc11 100644 |
| --- a/mojo/public/tools/bindings/generators/dart_templates/union_definition.tmpl |
| +++ b/mojo/public/tools/bindings/generators/dart_templates/union_definition.tmpl |
| @@ -1,8 +1,9 @@ |
| {#--- Begin #} |
| {%- import "encoding_macros.tmpl" as encoding_macros %} |
| +{% import "mojom_type_macros.tmpl" as mojom_type_macros %} |
| -{%- macro enum_def(union) %} |
| +{%- macro enum_def(union, typepkg, package) %} |
| enum {{union|name}}Tag { |
| {%- for field in union.fields %} |
| {{field|tag_name}}, |
| @@ -51,7 +52,7 @@ class {{union|name}} extends bindings.Union { |
| } |
| {{union|name}} result = new {{union|name}}(); |
| - // TODO(azani): Handle unknown union member. |
| + // TODO(azani): Handle unknown union member. An assert breaks validation_unittest. |
| {{union|name}}Tag tag = _int_to_tag[decoder0.decodeUint32(offset + 4)]; |
| switch (tag) { |
| {%- for field in union.fields %} |
| @@ -64,6 +65,8 @@ class {{union|name}} extends bindings.Union { |
| {%- endif %} |
| break; |
| {%- endfor %} |
| + default: |
|
zra
2015/11/24 17:34:44
If this is an error or unreachable, that should be
alexfandrianto
2015/12/18 01:53:19
Someone else fixed this.
|
| + break; |
| } |
| return result; |
| @@ -83,6 +86,8 @@ class {{union|name}} extends bindings.Union { |
| {%- endif %} |
| break; |
| {%- endfor %} |
| + default: |
|
zra
2015/11/24 17:34:44
ditto.
alexfandrianto
2015/12/18 01:53:19
Done.
|
| + break; |
| } |
| } |
| @@ -104,7 +109,9 @@ class {{union|name}} extends bindings.Union { |
| {%- endmacro %} |
| -{%- macro union_def(union) %} |
| +{%- macro union_def(union, typepkg, package) %} |
| {{enum_def(union)}} |
| {{wrapper_def(union)}} |
| + |
| +{{ mojom_type_macros.writeMojomTypeDef(union, typepkg, package) }} |
| {%- endmacro %} |