Index: third_party/WebKit/Source/build/scripts/make_element_type_helpers.py |
diff --git a/third_party/WebKit/Source/build/scripts/make_element_type_helpers.py b/third_party/WebKit/Source/build/scripts/make_element_type_helpers.py |
index f502fc974152e2f954f43ec5c1181a28e8b8473f..5b769c081051cda493f83aa35eb2fa9ae921d79a 100755 |
--- a/third_party/WebKit/Source/build/scripts/make_element_type_helpers.py |
+++ b/third_party/WebKit/Source/build/scripts/make_element_type_helpers.py |
@@ -56,18 +56,22 @@ class MakeElementTypeHelpersWriter(in_generator.Writer): |
self._outputs = { |
(self.namespace + "ElementTypeHelpers.h"): self.generate_helper_header, |
+ (self.namespace + "ElementTypeHelpers.cpp"): self.generate_helper_implementation, |
} |
self._template_context = { |
'namespace': self.namespace, |
'tags': self.in_file.name_dictionaries, |
+ 'elements': set(), |
} |
tags = self._template_context['tags'] |
+ elements = self._template_context['elements'] |
interface_counts = defaultdict(int) |
for tag in tags: |
tag['interface'] = self._interface(tag) |
interface_counts[tag['interface']] += 1 |
+ elements.add(tag['interface']) |
for tag in tags: |
tag['multipleTagNames'] = (interface_counts[tag['interface']] > 1 or tag['interface'] == self.fallbackInterface) |
@@ -76,6 +80,10 @@ class MakeElementTypeHelpersWriter(in_generator.Writer): |
def generate_helper_header(self): |
return self._template_context |
+ @template_expander.use_jinja("ElementTypeHelpers.cpp.tmpl", filters=filters) |
+ def generate_helper_implementation(self): |
+ return self._template_context |
+ |
def _interface(self, tag): |
if tag['interfaceName']: |
return tag['interfaceName'] |