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

Side by Side Diff: mojo/public/tools/bindings/generators/go_templates/enum.tmpl

Issue 1719873003: Mojom runtime type info: New implementation for Go. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Rebasing Created 4 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 {% import "mojom_type_macros.tmpl" as mojom_type_macros %}
6
7 {% macro define(enum, typepkg, package) %} 5 {% macro define(enum, typepkg, package) %}
8 type {{enum|name}} int32 6 type {{enum|name}} int32
9 7
10 const ( 8 const (
11 {% for field in enum.fields %} 9 {% for field in enum.fields %}
12 {% if field.value %} 10 {% if field.value %}
13 {{enum|name}}_{{field|name}} = {{field.value|expression_to_text}} 11 {{enum|name}}_{{field|name}} = {{field.value|expression_to_text}}
14 {% elif loop.first %} 12 {% elif loop.first %}
15 {{enum|name}}_{{field|name}} = 0 13 {{enum|name}}_{{field|name}} = 0
16 {% else %} 14 {% else %}
17 {{enum|name}}_{{field|name}} = {{enum|name}}_{{enum.fields[loop.index0 - 1]|name}} + 1; 15 {{enum|name}}_{{field|name}} = {{enum|name}}_{{enum.fields[loop.index0 - 1]|name}} + 1;
18 {% endif %} 16 {% endif %}
19 {% endfor %} 17 {% endfor %}
20 ) 18 )
21 19
22 {{ mojom_type_macros.writeMojomTypeDef(typepkg, enum, package, exported) }}
23
24 {% endmacro %} 20 {% endmacro %}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698