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

Unified Diff: Source/bindings/scripts/interface_dependency_resolver.py

Issue 209663005: Add back [ImplementedInBaseClass] IDL extended attribute (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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: Source/bindings/scripts/interface_dependency_resolver.py
diff --git a/Source/bindings/scripts/interface_dependency_resolver.py b/Source/bindings/scripts/interface_dependency_resolver.py
index 131469d5a66af5ac53afca228ab437b56afe4a9c..f0fdd2388c87ce33cfbfb5b932ad1166846c6a27 100644
--- a/Source/bindings/scripts/interface_dependency_resolver.py
+++ b/Source/bindings/scripts/interface_dependency_resolver.py
@@ -143,15 +143,17 @@ def transfer_extended_attributes(dependency_interface, dependency_interface_base
# C++ class name of the implementation, stored in [ImplementedBy], which
# defaults to the basename of dependency IDL file.
- # This can be overridden by [ImplementedAs] on the dependency interface.
+ # This can be overridden by [ImplementedAs] on the dependency interface,
+ # and omitted entirely by [ImplementedInBaseClass].
# Note that [ImplementedAs] is used with different meanings on interfaces
# and members:
# for Blink class name and function name (or constant name), respectively.
# Thus we do not want to copy this from the interface to the member, but
# instead extract it and handle it separately.
- merged_extended_attributes['ImplementedBy'] = (
- dependency_interface.extended_attributes.get(
- 'ImplementedAs', dependency_interface_basename))
+ if 'ImplementedInBaseClass' not in dependency_interface.extended_attributes:
+ merged_extended_attributes['ImplementedBy'] = (
+ dependency_interface.extended_attributes.get(
+ 'ImplementedAs', dependency_interface_basename))
for attribute in dependency_interface.attributes:
attribute.extended_attributes.update(merged_extended_attributes)

Powered by Google App Engine
This is Rietveld 408576698