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

Unified Diff: build/android/gyp/java_cpp_enum.py

Issue 659493003: Final step of the java_cpp_template -> java_cpp_enum migration. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: delete some more template files Created 6 years, 2 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: build/android/gyp/java_cpp_enum.py
diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enum.py
index 6a1d5c1e4c39fa54a1c1b2550356a162c2dcb173..002aed500ad420b73cd184751585c819491ebbf4 100755
--- a/build/android/gyp/java_cpp_enum.py
+++ b/build/android/gyp/java_cpp_enum.py
@@ -61,16 +61,24 @@ class EnumDefinition(object):
prefix_to_strip = ''
else:
prefix_to_strip = self.prefix_to_strip
- entries = ((k.replace(prefix_to_strip, '', 1), v) for (k, v) in
- self.entries.iteritems())
- self.entries = collections.OrderedDict(entries)
+
+ entries = collections.OrderedDict()
+ for (k, v) in self.entries.iteritems():
+ stripped_key = k.replace(prefix_to_strip, '', 1)
+ if isinstance(v, basestring):
+ stripped_value = v.replace(prefix_to_strip, '', 1)
+ else:
+ stripped_value = v
+ entries[stripped_key] = stripped_value
+
+ self.entries = entries
class HeaderParser(object):
single_line_comment_re = re.compile(r'\s*//')
multi_line_comment_start_re = re.compile(r'\s*/\*')
enum_start_re = re.compile(r'^\s*enum\s+(\w+)\s+{\s*$')
enum_line_re = re.compile(r'^\s*(\w+)(\s*\=\s*([^,\n]+))?,?')
- enum_end_re = re.compile(r'^\s*}\s*;\s*$')
+ enum_end_re = re.compile(r'^\s*}\s*;\.*$')
generator_directive_re = re.compile(
r'^\s*//\s+GENERATED_JAVA_(\w+)\s*:\s*([\.\w]+)$')
@@ -109,6 +117,9 @@ class HeaderParser(object):
enum_value = enum_entry.groups()[2]
self._current_definition.AppendEntry(enum_key, enum_value)
+ def _GetCurrentEnumClassNameOverride(self):
+ return self._generator_directives.get('CLASS_NAME_OVERRIDE')
+
def _GetCurrentEnumPackageName(self):
return self._generator_directives.get('ENUM_PACKAGE')
@@ -128,7 +139,8 @@ class HeaderParser(object):
if not self._GetCurrentEnumPackageName():
return
self._current_definition = EnumDefinition()
- self._current_definition.class_name = enum_start.groups()[0]
+ self._current_definition.class_name = (
+ self._GetCurrentEnumClassNameOverride() or enum_start.groups()[0])
self._in_enum = True
elif generator_directive:
directive_name = generator_directive.groups()[0]

Powered by Google App Engine
This is Rietveld 408576698