Implement basic support for Web IDL implements statements in the bindings generator: http://www.w3.org/TR/WebIDL/#dfn-implements-statement I added this recently to Blink already: https://src.chromium.org/viewvc/blink?revision=152655&view=revision
Created attachment 204994 [details] Patch
Attachment 204994 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/WebCore/ChangeLog', u'Source/WebCore/DerivedSources.make', u'Source/WebCore/DerivedSources.pri', u'Source/WebCore/GNUmakefile.list.am', u'Source/WebCore/bindings/scripts/generate-bindings.pl', u'Source/WebCore/bindings/scripts/preprocess-idls.pl', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestImplements.cpp', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestImplements.h', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.cpp', u'Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.h', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestImplements.cpp', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestImplements.h', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp', u'Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.h', u'Source/WebCore/bindings/scripts/test/JS/JSTestImplements.cpp', u'Source/WebCore/bindings/scripts/test/JS/JSTestImplements.h', u'Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp', u'Source/WebCore/bindings/scripts/test/JS/JSTestInterface.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestImplements.cpp', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestImplements.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestInterface.h', u'Source/WebCore/bindings/scripts/test/ObjC/DOMTestInterface.mm', u'Source/WebCore/bindings/scripts/test/TestImplements.idl', u'Source/WebCore/dom/CharacterData.idl', u'Source/WebCore/dom/ChildNode.idl', u'Source/WebCore/dom/DocumentType.idl', u'Source/WebCore/dom/Element.idl']" exit_code: 1 Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:260: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:262: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:263: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:264: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:265: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:267: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:269: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:270: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:271: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:272: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:274: When wrapping a line, only indent 4 spaces. [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:276: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:277: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:278: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:279: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.h:47: enum members should use InterCaps with an initial capital letter. [readability/enum_casing] [4] Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.h:50: enum members should use InterCaps with an initial capital letter. [readability/enum_casing] [4] Source/WebCore/bindings/scripts/test/ObjC/DOMTestInterface.h:37: enum members should use InterCaps with an initial capital letter. [readability/enum_casing] [4] Source/WebCore/bindings/scripts/test/ObjC/DOMTestInterface.h:40: enum members should use InterCaps with an initial capital letter. [readability/enum_casing] [4] Total errors found: 19 in 25 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 204994 [details] Patch LGTM. I'm secretly hoping you get rid of multiple inheritance from SVG IDL files by using the 'implements' :)
(In reply to comment #3) > (From update of attachment 204994 [details]) > LGTM. > > I'm secretly hoping you get rid of multiple inheritance from SVG IDL files by using the 'implements' :) Yes, it is on my TODO list :)
Comment on attachment 204994 [details] Patch Clearing flags on attachment: 204994 Committed r151740: <http://trac.webkit.org/changeset/151740>
All reviewed patches have been landed. Closing bug.
We get binding test failures on the bots. Can you please check?
(In reply to comment #7) > We get binding test failures on the bots. Can you please check? Looks like all the generated content is there but at a different place. The tests are passing for me locally. I need to investigate but it looks like on mac the supplemental (partial interface) code is added *before* the implements code instead of after. I will take a look at this today but I have a long meeting in the morning :(
(In reply to comment #7) > We get binding test failures on the bots. Can you please check? Addressing this issue via Bug 117820, thanks.