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

Unified Diff: tools/json_schema_compiler/idl_schema.py

Issue 143473003: Generate ax enums from idl. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add allow custom filename property to top level idl. Created 6 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: tools/json_schema_compiler/idl_schema.py
diff --git a/tools/json_schema_compiler/idl_schema.py b/tools/json_schema_compiler/idl_schema.py
index c6e49bf507b43646b710574786bf31944cff8346..ffdb9605ecb6833816e5290290567b67784ef16e 100644
--- a/tools/json_schema_compiler/idl_schema.py
+++ b/tools/json_schema_compiler/idl_schema.py
@@ -307,7 +307,8 @@ class Enum(object):
'description': self.description,
'type': 'string',
'enum': enum}
- for property_name in ('inline_doc', 'noinline_doc', 'nodoc'):
+ for property_name in (
+ 'inline_doc', 'noinline_doc', 'nodoc', 'cpp_omit_enum_type',):
if self.node.GetProperty(property_name):
result[property_name] = True
return result
@@ -325,7 +326,8 @@ class Namespace(object):
nodoc=False,
internal=False,
platforms=None,
- compiler_options=None):
+ compiler_options=None,
+ allow_custom_filename=False):
self.namespace = namespace_node
self.nodoc = nodoc
self.internal = internal
@@ -336,6 +338,7 @@ class Namespace(object):
self.types = []
self.callbacks = OrderedDict()
self.description = description
+ self.allow_custom_filename = allow_custom_filename
def process(self):
for node in self.namespace.GetChildren():
@@ -364,7 +367,8 @@ class Namespace(object):
'internal': self.internal,
'events': self.events,
'platforms': self.platforms,
- 'compiler_options': compiler_options}
+ 'compiler_options': compiler_options,
+ 'allow_custom_filename': self.allow_custom_filename}
def process_interface(self, node):
members = []
@@ -391,6 +395,7 @@ class IDLSchema(object):
description = None
platforms = None
compiler_options = None
+ allow_custom_filename = False
for node in self.idl:
if node.cls == 'Namespace':
if not description:
@@ -400,12 +405,14 @@ class IDLSchema(object):
description = ''
namespace = Namespace(node, description, nodoc, internal,
platforms=platforms,
- compiler_options=compiler_options)
+ compiler_options=compiler_options,
+ allow_custom_filename=allow_custom_filename)
namespaces.append(namespace.process())
nodoc = False
internal = False
platforms = None
compiler_options = None
+ allow_custom_filename = False
elif node.cls == 'Copyright':
continue
elif node.cls == 'Comment':
@@ -419,6 +426,8 @@ class IDLSchema(object):
platforms = list(node.value)
elif node.name == 'implemented_in':
compiler_options = {'implemented_in': node.value}
+ elif node.name == 'allow_custom_filename':
+ allow_custom_filename = True
else:
continue
else:

Powered by Google App Engine
This is Rietveld 408576698