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

Unified Diff: mojo/public/bindings/parse/mojo_parser.py

Issue 99623010: Add support for enums within structs and interfaces to mojom. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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/bindings/parse/mojo_parser.py
diff --git a/mojo/public/bindings/parse/mojo_parser.py b/mojo/public/bindings/parse/mojo_parser.py
index 61d7ec23d3b3533a15d76bcef6805bf12928f104..b5e33b650f9dfa1c253b65f103d694b6c35d54a4 100755
--- a/mojo/public/bindings/parse/mojo_parser.py
+++ b/mojo/public/bindings/parse/mojo_parser.py
@@ -172,12 +172,13 @@ class Parser(object):
p[0] = ('ATTRIBUTE', p[1], p[3])
def p_struct(self, p):
- """struct : attribute_section STRUCT NAME LCURLY fields RCURLY SEMICOLON"""
+ """struct : attribute_section STRUCT NAME LCURLY struct_body RCURLY SEMICOLON"""
p[0] = ('STRUCT', p[3], p[1], p[5])
- def p_fields(self, p):
- """fields : field fields
- |"""
+ def p_struct_body(self, p):
+ """struct_body : field struct_body
+ | enum struct_body
+ |"""
if len(p) > 1:
p[0] = ListFromConcat(p[1], p[2])
@@ -186,12 +187,13 @@ class Parser(object):
p[0] = ('FIELD', p[1], p[2], p[3])
def p_interface(self, p):
- """interface : attribute_section INTERFACE NAME LCURLY methods RCURLY SEMICOLON"""
+ """interface : attribute_section INTERFACE NAME LCURLY interface_body RCURLY SEMICOLON"""
p[0] = ('INTERFACE', p[3], p[1], p[5])
- def p_methods(self, p):
- """methods : method methods
- | """
+ def p_interface_body(self, p):
+ """interface_body : method interface_body
+ | enum interface_body
+ | """
if len(p) > 1:
p[0] = ListFromConcat(p[1], p[2])

Powered by Google App Engine
This is Rietveld 408576698