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

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

Issue 1345263002: Generate Mojom Types in Go (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 3 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 {% macro define(enum) %} 5 {% import "mojom_type_macros.tmpl" as mojom_type_macros %}
6 {% import "mojom_util_macros.tmpl" as util %}
7
8 {% macro define(enum, typepkg, package) %}
6 type {{enum|name}} int32 9 type {{enum|name}} int32
7 10
8 const ( 11 const (
9 {% for field in enum.fields %} 12 {% for field in enum.fields %}
10 {% if field.value %} 13 {% if field.value %}
11 {{enum|name}}_{{field|name}} = {{field.value|expression_to_text}} 14 {{enum|name}}_{{field|name}} = {{field.value|expression_to_text}}
12 {% elif loop.first %} 15 {% elif loop.first %}
13 {{enum|name}}_{{field|name}} = 0 16 {{enum|name}}_{{field|name}} = 0
14 {% else %} 17 {% else %}
15 {{enum|name}}_{{field|name}} = {{enum|name}}_{{enum.fields[loop.index0 - 1]|name}} + 1; 18 {{enum|name}}_{{field|name}} = {{enum|name}}_{{enum.fields[loop.index0 - 1]|name}} + 1;
16 {% endif %} 19 {% endif %}
17 {% endfor %} 20 {% endfor %}
18 ) 21 )
19 22
23 var {{util.enumName(enum, typepkg, package)}} = {{
24 mojom_type_macros.writeMojomType(typepkg, enum, package, exported) }}
25
20 {% endmacro %} 26 {% endmacro %}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698