Title: [144419] trunk/Source/WebCore
Revision
144419
Author
[email protected]
Date
2013-02-28 22:24:16 -0800 (Thu, 28 Feb 2013)

Log Message

[V8] Added V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
https://bugs.webkit.org/show_bug.cgi?id=110852

Patch by Koji Hara <[email protected]> on 2013-02-28
Reviewed by Kentaro Hara.

Add V8CustomIndexedGetter attribute that indicates the interface have custom implementation of a getter of indexed properties.
(Also added to the wiki)
https://trac.webkit.org/wiki/WebKitIDL#V8CustomIndexedGetter
Add V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
We want to clean up CodeGeneratorV8.pm.
The problem is that all implementations of indexed properties and named properties are currently delegated to custom bindings.
We want to auto-generate as much code as possible.
As a starting point, this commit assures a interface has [V8CustomIndexedGetter] ==> there's custom implementation of indexed getter.

No test. Simple refactoring.

* bindings/scripts/IDLAttributes.txt: Add V8CustomIndexedGetter attribute.
* dom/NamedNodeMap.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLAppletElement.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLEmbedElement.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLFormElement.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLObjectElement.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLOptionsCollection.idl: Add V8CustomIndexedGetter attribute.
* html/HTMLSelectElement.idl: Add V8CustomIndexedGetter attribute.
* page/DOMWindow.idl: Add V8CustomIndexedGetter attribute.
* storage/Storage.idl: Add V8CustomIndexedGetter attribute.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (144418 => 144419)


--- trunk/Source/WebCore/ChangeLog	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/ChangeLog	2013-03-01 06:24:16 UTC (rev 144419)
@@ -1,3 +1,32 @@
+2013-02-28  Koji Hara  <[email protected]>
+
+        [V8] Added V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
+        https://bugs.webkit.org/show_bug.cgi?id=110852
+
+        Reviewed by Kentaro Hara.
+
+        Add V8CustomIndexedGetter attribute that indicates the interface have custom implementation of a getter of indexed properties.
+        (Also added to the wiki)
+        https://trac.webkit.org/wiki/WebKitIDL#V8CustomIndexedGetter
+        Add V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
+        We want to clean up CodeGeneratorV8.pm.
+        The problem is that all implementations of indexed properties and named properties are currently delegated to custom bindings.
+        We want to auto-generate as much code as possible.
+        As a starting point, this commit assures a interface has [V8CustomIndexedGetter] ==> there's custom implementation of indexed getter.
+
+        No test. Simple refactoring.
+
+        * bindings/scripts/IDLAttributes.txt: Add V8CustomIndexedGetter attribute.
+        * dom/NamedNodeMap.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLAppletElement.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLEmbedElement.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLFormElement.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLObjectElement.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLOptionsCollection.idl: Add V8CustomIndexedGetter attribute.
+        * html/HTMLSelectElement.idl: Add V8CustomIndexedGetter attribute.
+        * page/DOMWindow.idl: Add V8CustomIndexedGetter attribute.
+        * storage/Storage.idl: Add V8CustomIndexedGetter attribute.
+
 2013-02-28  Xingnan Wang  <[email protected]>
 
         Heap-use-after-free in WebCore::AudioNodeInput::updateInternalBus

Modified: trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt (144418 => 144419)


--- trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt	2013-03-01 06:24:16 UTC (rev 144419)
@@ -116,6 +116,7 @@
 V8Custom
 V8CustomConstructor
 V8CustomGetter
+V8CustomIndexedGetter
 V8CustomIsReachable
 V8CustomSetter
 V8CustomToJSObject

Modified: trunk/Source/WebCore/dom/NamedNodeMap.idl (144418 => 144419)


--- trunk/Source/WebCore/dom/NamedNodeMap.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/dom/NamedNodeMap.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -22,6 +22,7 @@
     GenerateIsReachable=ImplElementRoot,
     IndexedGetter,
     NamedGetter,
+    V8CustomIndexedGetter,
     ImplementationLacksVTable
 ] interface NamedNodeMap {
 

Modified: trunk/Source/WebCore/html/HTMLAppletElement.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLAppletElement.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLAppletElement.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -21,6 +21,7 @@
 [
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
+    V8CustomIndexedGetter,
     CustomCall
 ] interface HTMLAppletElement : HTMLElement {
     [Reflect] attribute DOMString align;

Modified: trunk/Source/WebCore/html/HTMLEmbedElement.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLEmbedElement.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLEmbedElement.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -22,6 +22,7 @@
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
     CustomCall,
+    V8CustomIndexedGetter,
     V8SkipVTableValidation
 ] interface HTMLEmbedElement : HTMLElement {
 attribute [Reflect] DOMString align;

Modified: trunk/Source/WebCore/html/HTMLFormElement.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLFormElement.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLFormElement.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -20,6 +20,7 @@
 
 [
     IndexedGetter,
+    V8CustomIndexedGetter,
     CustomNamedGetter
 ] interface HTMLFormElement : HTMLElement {
     [Reflect=accept_charset] attribute DOMString acceptCharset;

Modified: trunk/Source/WebCore/html/HTMLObjectElement.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLObjectElement.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLObjectElement.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -21,6 +21,7 @@
 [
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
+    V8CustomIndexedGetter,
     CustomCall
 ] interface HTMLObjectElement : HTMLElement {
     readonly attribute HTMLFormElement form;

Modified: trunk/Source/WebCore/html/HTMLOptionsCollection.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLOptionsCollection.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLOptionsCollection.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -23,6 +23,7 @@
     CustomIndexedSetter,
     NamedGetter,
     GenerateIsReachable=ImplOwnerNodeRoot,
+    V8CustomIndexedGetter,
     V8DependentLifetime,
 ] interface HTMLOptionsCollection : HTMLCollection {
     attribute long selectedIndex;

Modified: trunk/Source/WebCore/html/HTMLSelectElement.idl (144418 => 144419)


--- trunk/Source/WebCore/html/HTMLSelectElement.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/html/HTMLSelectElement.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -21,6 +21,7 @@
 [
     IndexedGetter,
     CustomIndexedSetter,
+    V8CustomIndexedGetter,
     V8SkipVTableValidation
 ] interface HTMLSelectElement : HTMLElement {
     attribute [Reflect] boolean autofocus;

Modified: trunk/Source/WebCore/page/DOMWindow.idl (144418 => 144419)


--- trunk/Source/WebCore/page/DOMWindow.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/page/DOMWindow.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -40,6 +40,7 @@
     JSLegacyParent=JSDOMWindowBase,
     V8CustomToJSObject,
     V8NoWrapperCache,
+    V8CustomIndexedGetter,
     InterfaceName=Window
 ] interface DOMWindow {
     // DOM Level 0

Modified: trunk/Source/WebCore/storage/Storage.idl (144418 => 144419)


--- trunk/Source/WebCore/storage/Storage.idl	2013-03-01 06:23:57 UTC (rev 144418)
+++ trunk/Source/WebCore/storage/Storage.idl	2013-03-01 06:24:16 UTC (rev 144419)
@@ -28,6 +28,7 @@
     JSGenerateIsReachable=ImplFrame,
     CustomDeleteProperty,
     CustomEnumerateProperty,
+    V8CustomIndexedGetter,
     CustomNamedSetter,
 ] interface Storage {
     [NotEnumerable] readonly attribute unsigned long length getter raises(DOMException);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to