Refactor IDL attributes about constructor
authorharaken@chromium.org <haraken@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Oct 2011 06:00:41 +0000 (06:00 +0000)
committerharaken@chromium.org <haraken@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Oct 2011 06:00:41 +0000 (06:00 +0000)
commit539cf4a514f0a29f4031722b5c70b2f4188386cd
tree524d9424b45ef052b538e4ec87140a8403c8f126
parent112b9d95a0f8eb2bc0ec5ff0722e87b2412c5051
Refactor IDL attributes about constructor
https://bugs.webkit.org/show_bug.cgi?id=69074

Reviewed by Adam Barth.

Currently, IDL attributes about constructor are confusing:

- [CustomConstructFunction] means that there is a custom constructor for JSC.
- [V8CustomConstructor] means that there is a custom constructor for V8.
- [CustomConstructor] exists in CodeGenerator*.pm but is not used in any IDL files.
- For almost all IDL files, [CustomConstructFunction] and [V8CustomConstructor] are used at the same time.
- ObjC, CPP and GObject bindings do not support custom constructors.

This patch makes the following changes:

- Rename [CustomConstructFunction] to [JSCustomConstructor].
- [JSCustomConstructor] means that there is a custom constructor for JSC.
- [V8CustomConstructor] means that there is a custom constructor for V8.
- [CustomConstructor] means that there is a custom constructor for both JSC and V8.

No new tests. No change in behavior. Confirm that build succeeds.

* bindings/scripts/CodeGeneratorJS.pm: Removed [CustomConstructFunction] and added [JSCustomConstructor]
(GenerateHeader):
(GenerateAttributesHashTable):
(GenerateImplementation):
(GenerateConstructorDefinition):
* css/WebKitCSSMatrix.idl: Renamed [CustomConstructFunction] to [JSCustomConstructor]. If both [JSCustomConstructor] and [V8CustomConstructor] are specified, then we replaced them with [CustomConstructor].
* dom/CustomEvent.idl: Ditto.
* dom/ErrorEvent.idl: Ditto.
* dom/Event.idl: Ditto.
* dom/HashChangeEvent.idl: Ditto.
* dom/MessageChannel.idl: Ditto.
* dom/MessageEvent.idl: Ditto.
* dom/PageTransitionEvent.idl: Ditto.
* dom/PopStateEvent.idl: Ditto.
* dom/ProgressEvent.idl: Ditto.
* dom/WebKitAnimationEvent.idl: Ditto.
* html/DOMFormData.idl: Ditto.
* html/canvas/ArrayBuffer.idl: Ditto.
* html/canvas/DataView.idl: Ditto.
* html/canvas/Float32Array.idl: Ditto.
* html/canvas/Float64Array.idl: Ditto.
* html/canvas/Int16Array.idl: Ditto.
* html/canvas/Int32Array.idl: Ditto.
* html/canvas/Int8Array.idl: Ditto.
* html/canvas/Uint16Array.idl: Ditto.
* html/canvas/Uint32Array.idl: Ditto.
* html/canvas/Uint8Array.idl: Ditto.
* p2p/PeerConnection.idl: Ditto.
* page/EventSource.idl: Ditto.
* page/WebKitPoint.idl: Ditto.
* webaudio/AudioContext.idl: Ditto.
* websockets/CloseEvent.idl: Ditto.
* websockets/WebSocket.idl: Ditto.
* workers/SharedWorker.idl: Ditto.
* workers/Worker.idl: Ditto.
* xml/XMLHttpRequest.idl: Ditto.
* xml/XSLTProcessor.idl: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@96788 268f45cc-cd09-0410-ab3c-d52691b4dbfc
34 files changed:
Source/WebCore/ChangeLog
Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
Source/WebCore/css/WebKitCSSMatrix.idl
Source/WebCore/dom/CustomEvent.idl
Source/WebCore/dom/ErrorEvent.idl
Source/WebCore/dom/Event.idl
Source/WebCore/dom/HashChangeEvent.idl
Source/WebCore/dom/MessageChannel.idl
Source/WebCore/dom/MessageEvent.idl
Source/WebCore/dom/PageTransitionEvent.idl
Source/WebCore/dom/PopStateEvent.idl
Source/WebCore/dom/ProgressEvent.idl
Source/WebCore/dom/WebKitAnimationEvent.idl
Source/WebCore/html/DOMFormData.idl
Source/WebCore/html/canvas/ArrayBuffer.idl
Source/WebCore/html/canvas/DataView.idl
Source/WebCore/html/canvas/Float32Array.idl
Source/WebCore/html/canvas/Float64Array.idl
Source/WebCore/html/canvas/Int16Array.idl
Source/WebCore/html/canvas/Int32Array.idl
Source/WebCore/html/canvas/Int8Array.idl
Source/WebCore/html/canvas/Uint16Array.idl
Source/WebCore/html/canvas/Uint32Array.idl
Source/WebCore/html/canvas/Uint8Array.idl
Source/WebCore/p2p/PeerConnection.idl
Source/WebCore/page/EventSource.idl
Source/WebCore/page/WebKitPoint.idl
Source/WebCore/webaudio/AudioContext.idl
Source/WebCore/websockets/CloseEvent.idl
Source/WebCore/websockets/WebSocket.idl
Source/WebCore/workers/SharedWorker.idl
Source/WebCore/workers/Worker.idl
Source/WebCore/xml/XMLHttpRequest.idl
Source/WebCore/xml/XSLTProcessor.idl