+2012-02-06 Kentaro Hara <haraken@chromium.org>
+
+ Rename [HasIndexGetter], [HasNameGetter] and [HasCustomIndexSetter] IDLs
+ https://bugs.webkit.org/show_bug.cgi?id=77848
+
+ Reviewed by Adam Barth.
+
+ For naming consistency with [CustomGetter] and [CustomSetter],
+ this patch renames the following IDLs:
+
+ [HasIndexGetter] => [IndexedGetter] (Remove "Has". This IDL is for "indexed" properties
+ in the Web IDL: http://dev.w3.org/2006/webapi/WebIDL/#idl-indexed-properties)
+ [HasCustomIndexSetter] => [CustomIndexedSetter] (Ditto.)
+ [HasNameGetter] => [NamedGetter] (Remove "Has". This IDL is for "named" properties
+ in the Web IDL: http://dev.w3.org/2006/webapi/WebIDL/#idl-named-properties)
+
+ No tests. No change in behavior.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateGetOwnPropertySlotBody):
+ (GenerateGetOwnPropertyDescriptorBody):
+ (GenerateHeader):
+ (GenerateImplementation):
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeaderNamedAndIndexedPropertyAccessors):
+ (GenerateImplementationIndexer):
+ (GenerateImplementationNamedPropertyGetter):
+
+ * bindings/scripts/test/TestEventTarget.idl: No change in run-bindings-tests results.
+ * bindings/scripts/test/TestTypedArray.idl: Ditto.
+
+ * Modules/gamepad/GamepadList.idl:
+ * css/CSSRuleList.idl:
+ * css/CSSStyleDeclaration.idl:
+ * css/CSSValueList.idl:
+ * css/MediaList.idl:
+ * css/StyleSheetList.idl:
+ * css/WebKitCSSFilterValue.idl:
+ * css/WebKitCSSKeyframesRule.idl:
+ * css/WebKitCSSTransformValue.idl:
+ * dom/ClientRectList.idl:
+ * dom/DOMStringList.idl:
+ * dom/DOMStringMap.idl:
+ * dom/DataTransferItemList.idl:
+ * dom/NamedNodeMap.idl:
+ * dom/NodeList.idl:
+ * dom/TouchList.idl:
+ * fileapi/EntryArray.idl:
+ * fileapi/EntryArraySync.idl:
+ * fileapi/FileList.idl:
+ * html/DOMSettableTokenList.idl:
+ * html/DOMTokenList.idl:
+ * html/HTMLAllCollection.idl:
+ * html/HTMLCollection.idl:
+ * html/HTMLFormElement.idl:
+ * html/HTMLOptionsCollection.idl:
+ * html/HTMLPropertiesCollection.idl:
+ * html/HTMLSelectElement.idl:
+ * html/TextTrackCueList.idl:
+ * html/canvas/CanvasPixelArray.idl:
+ * html/canvas/Float32Array.idl:
+ * html/canvas/Float64Array.idl:
+ * html/canvas/Int16Array.idl:
+ * html/canvas/Int32Array.idl:
+ * html/canvas/Int8Array.idl:
+ * html/canvas/Uint16Array.idl:
+ * html/canvas/Uint32Array.idl:
+ * html/canvas/Uint8Array.idl:
+ * html/canvas/Uint8ClampedArray.idl:
+ * html/track/TextTrackList.idl:
+ * mediastream/MediaStreamList.idl:
+ * mediastream/MediaStreamTrackList.idl:
+ * page/SpeechInputResultList.idl:
+ * page/WebKitAnimationList.idl:
+ * plugins/DOMMimeTypeArray.idl:
+ * plugins/DOMPlugin.idl:
+ * plugins/DOMPluginArray.idl:
+ * storage/Storage.idl:
+
2012-02-06 Allan Sandfeld Jensen <allan.jensen@nokia.com>
Ensure timers and other active DOM objects do not fire in suspended documents.
}
my $manualLookupGetterGeneration = sub {
- my $requiresManualLookup = $dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNameGetter"};
+ my $requiresManualLookup = $dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"NamedGetter"};
if ($requiresManualLookup) {
push(@getOwnPropertySlotImpl, " const ${namespaceMaybe}HashEntry* entry = ${className}Table.entry(exec, propertyName);\n");
push(@getOwnPropertySlotImpl, " if (entry) {\n");
&$manualLookupGetterGeneration();
}
- if ($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
push(@getOwnPropertySlotImpl, " bool ok;\n");
push(@getOwnPropertySlotImpl, " unsigned index = propertyName.toUInt32(ok);\n");
push(@getOwnPropertySlotImpl, " }\n");
}
- if ($dataNode->extendedAttributes->{"HasNameGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
+ if ($dataNode->extendedAttributes->{"NamedGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
push(@getOwnPropertySlotImpl, " if (canGetItemsForName(exec, static_cast<$implClassName*>(thisObject->impl()), propertyName)) {\n");
push(@getOwnPropertySlotImpl, " slot.setCustom(thisObject, thisObject->nameGetter);\n");
push(@getOwnPropertySlotImpl, " return true;\n");
}
my $manualLookupGetterGeneration = sub {
- my $requiresManualLookup = $dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNameGetter"};
+ my $requiresManualLookup = $dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"NamedGetter"};
if ($requiresManualLookup) {
push(@getOwnPropertyDescriptorImpl, " const ${namespaceMaybe}HashEntry* entry = ${className}Table.entry(exec, propertyName);\n");
push(@getOwnPropertyDescriptorImpl, " if (entry) {\n");
&$manualLookupGetterGeneration();
}
- if ($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
push(@getOwnPropertyDescriptorImpl, " bool ok;\n");
push(@getOwnPropertyDescriptorImpl, " unsigned index = propertyName.toUInt32(ok);\n");
push(@getOwnPropertyDescriptorImpl, " if (ok && index < static_cast<$implClassName*>(thisObject->impl())->length()) {\n");
if ($dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
# Assume that if there's a setter, the index will be writable
- if ($dataNode->extendedAttributes->{"HasCustomIndexSetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomIndexedSetter"}) {
push(@getOwnPropertyDescriptorImpl, " descriptor.setDescriptor(thisObject->getByIndex(exec, index), ${namespaceMaybe}DontDelete);\n");
} else {
push(@getOwnPropertyDescriptorImpl, " descriptor.setDescriptor(thisObject->getByIndex(exec, index), ${namespaceMaybe}DontDelete | ${namespaceMaybe}ReadOnly);\n");
push(@getOwnPropertyDescriptorImpl, " ${namespaceMaybe}PropertySlot slot;\n");
push(@getOwnPropertyDescriptorImpl, " slot.setCustomIndex(thisObject, index, indexGetter);\n");
# Assume that if there's a setter, the index will be writable
- if ($dataNode->extendedAttributes->{"HasCustomIndexSetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomIndexedSetter"}) {
push(@getOwnPropertyDescriptorImpl, " descriptor.setDescriptor(slot.getValue(exec, propertyName), ${namespaceMaybe}DontDelete);\n");
} else {
push(@getOwnPropertyDescriptorImpl, " descriptor.setDescriptor(slot.getValue(exec, propertyName), ${namespaceMaybe}DontDelete | ${namespaceMaybe}ReadOnly);\n");
push(@getOwnPropertyDescriptorImpl, " }\n");
}
- if ($dataNode->extendedAttributes->{"HasNameGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
+ if ($dataNode->extendedAttributes->{"NamedGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
push(@getOwnPropertyDescriptorImpl, " if (canGetItemsForName(exec, static_cast<$implClassName*>(thisObject->impl()), propertyName)) {\n");
push(@getOwnPropertyDescriptorImpl, " ${namespaceMaybe}PropertySlot slot;\n");
push(@getOwnPropertyDescriptorImpl, " slot.setCustom(thisObject, nameGetter);\n");
my $hasGetter = $numAttributes > 0
|| !$dataNode->extendedAttributes->{"OmitConstructor"}
- || $dataNode->extendedAttributes->{"HasIndexGetter"}
+ || $dataNode->extendedAttributes->{"IndexedGetter"}
|| $dataNode->extendedAttributes->{"HasNumericIndexGetter"}
|| $dataNode->extendedAttributes->{"CustomGetOwnPropertySlot"}
|| $dataNode->extendedAttributes->{"DelegatingGetOwnPropertySlot"}
- || $dataNode->extendedAttributes->{"HasNameGetter"}
+ || $dataNode->extendedAttributes->{"NamedGetter"}
|| $dataNode->extendedAttributes->{"HasOverridingNameGetter"};
# Getters
if ($hasGetter) {
push(@headerContent, " static bool getOwnPropertySlot(JSC::JSCell*, JSC::ExecState*, const JSC::Identifier& propertyName, JSC::PropertySlot&);\n");
push(@headerContent, " static bool getOwnPropertyDescriptor(JSC::JSObject*, JSC::ExecState*, const JSC::Identifier& propertyName, JSC::PropertyDescriptor&);\n");
- push(@headerContent, " static bool getOwnPropertySlotByIndex(JSC::JSCell*, JSC::ExecState*, unsigned propertyName, JSC::PropertySlot&);\n") if ($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) && !$dataNode->extendedAttributes->{"HasOverridingNameGetter"};
+ push(@headerContent, " static bool getOwnPropertySlotByIndex(JSC::JSCell*, JSC::ExecState*, unsigned propertyName, JSC::PropertySlot&);\n") if ($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) && !$dataNode->extendedAttributes->{"HasOverridingNameGetter"};
push(@headerContent, " bool getOwnPropertySlotDelegate(JSC::ExecState*, const JSC::Identifier&, JSC::PropertySlot&);\n") if $dataNode->extendedAttributes->{"DelegatingGetOwnPropertySlot"};
push(@headerContent, " bool getOwnPropertyDescriptorDelegate(JSC::ExecState*, const JSC::Identifier&, JSC::PropertyDescriptor&);\n") if $dataNode->extendedAttributes->{"DelegatingGetOwnPropertySlot"};
$structureFlags{"JSC::OverridesGetOwnPropertySlot"} = 1;
my $hasSetter = $hasReadWriteProperties
|| $dataNode->extendedAttributes->{"CustomPutFunction"}
|| $dataNode->extendedAttributes->{"DelegatingPutFunction"}
- || $dataNode->extendedAttributes->{"HasCustomIndexSetter"};
+ || $dataNode->extendedAttributes->{"CustomIndexedSetter"};
# Getters
if ($hasSetter) {
push(@headerContent, " static void put(JSC::JSCell*, JSC::ExecState*, const JSC::Identifier& propertyName, JSC::JSValue, JSC::PutPropertySlot&);\n");
- push(@headerContent, " static void putByIndex(JSC::JSCell*, JSC::ExecState*, unsigned propertyName, JSC::JSValue);\n") if $dataNode->extendedAttributes->{"HasCustomIndexSetter"};
+ push(@headerContent, " static void putByIndex(JSC::JSCell*, JSC::ExecState*, unsigned propertyName, JSC::JSValue);\n") if $dataNode->extendedAttributes->{"CustomIndexedSetter"};
push(@headerContent, " bool putDelegate(JSC::ExecState*, const JSC::Identifier&, JSC::JSValue, JSC::PutPropertySlot&);\n") if $dataNode->extendedAttributes->{"DelegatingPutFunction"};
}
}
# Custom getOwnPropertyNames function
- if ($dataNode->extendedAttributes->{"CustomGetPropertyNames"} || $dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomGetPropertyNames"} || $dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
push(@headerContent, " static void getOwnPropertyNames(JSC::JSObject*, JSC::ExecState*, JSC::PropertyNameArray&, JSC::EnumerationMode mode = JSC::ExcludeDontEnumProperties);\n");
$structureFlags{"JSC::OverridesGetPropertyNames"} = 1;
}
push(@headerContent, "Base::StructureFlags;\n");
# Index getter
- if ($dataNode->extendedAttributes->{"HasIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"IndexedGetter"}) {
push(@headerContent, " static JSC::JSValue indexGetter(JSC::ExecState*, JSC::JSValue, unsigned);\n");
}
if ($dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
}
# Index setter
- if ($dataNode->extendedAttributes->{"HasCustomIndexSetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomIndexedSetter"}) {
push(@headerContent, " void indexSetter(JSC::ExecState*, unsigned index, JSC::JSValue);\n");
}
# Name getter
- if ($dataNode->extendedAttributes->{"HasNameGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
+ if ($dataNode->extendedAttributes->{"NamedGetter"} || $dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
push(@headerContent, "private:\n");
push(@headerContent, " static bool canGetItemsForName(JSC::ExecState*, $implClassName*, const JSC::Identifier&);\n");
push(@headerContent, " static JSC::JSValue nameGetter(JSC::ExecState*, JSC::JSValue, const JSC::Identifier&);\n");
AddIncludesForSVGAnimatedType($interfaceName) if $className =~ /^JSSVGAnimated/;
$implIncludes{"<wtf/GetPtr.h>"} = 1;
- $implIncludes{"<runtime/PropertyNameArray.h>"} = 1 if $dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"};
+ $implIncludes{"<runtime/PropertyNameArray.h>"} = 1 if $dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"};
AddIncludesForTypeInImpl($interfaceName);
my $hasGetter = $numAttributes > 0
|| !$dataNode->extendedAttributes->{"OmitConstructor"}
- || $dataNode->extendedAttributes->{"HasIndexGetter"}
+ || $dataNode->extendedAttributes->{"IndexedGetter"}
|| $dataNode->extendedAttributes->{"HasNumericIndexGetter"}
|| $dataNode->extendedAttributes->{"DelegatingGetOwnPropertySlot"}
|| $dataNode->extendedAttributes->{"CustomGetOwnPropertySlot"}
- || $dataNode->extendedAttributes->{"HasNameGetter"}
+ || $dataNode->extendedAttributes->{"NamedGetter"}
|| $dataNode->extendedAttributes->{"HasOverridingNameGetter"};
# Attributes
push(@implContent, "}\n\n");
}
- if (($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"})
+ if (($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"})
&& !$dataNode->extendedAttributes->{"HasOverridingNameGetter"}) {
push(@implContent, "bool ${className}::getOwnPropertySlotByIndex(JSCell* cell, ExecState* exec, unsigned propertyName, PropertySlot& slot)\n");
push(@implContent, "{\n");
my $hasSetter = $hasReadWriteProperties
|| $dataNode->extendedAttributes->{"DelegatingPutFunction"}
- || $dataNode->extendedAttributes->{"HasCustomIndexSetter"};
+ || $dataNode->extendedAttributes->{"CustomIndexedSetter"};
if ($hasSetter) {
if (!$dataNode->extendedAttributes->{"CustomPutFunction"}) {
push(@implContent, "{\n");
push(@implContent, " ${className}* thisObject = jsCast<${className}*>(cell);\n");
push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, &s_info);\n");
- if ($dataNode->extendedAttributes->{"HasCustomIndexSetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomIndexedSetter"}) {
push(@implContent, " bool ok;\n");
push(@implContent, " unsigned index = propertyName.toUInt32(ok);\n");
push(@implContent, " if (ok) {\n");
push(@implContent, "}\n\n");
}
- if ($dataNode->extendedAttributes->{"HasCustomIndexSetter"}) {
+ if ($dataNode->extendedAttributes->{"CustomIndexedSetter"}) {
push(@implContent, "void ${className}::putByIndex(JSCell* cell, ExecState* exec, unsigned propertyName, JSValue value)\n");
push(@implContent, "{\n");
push(@implContent, " ${className}* thisObject = jsCast<${className}*>(cell);\n");
}
}
- if (($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) && !$dataNode->extendedAttributes->{"CustomGetPropertyNames"}) {
+ if (($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) && !$dataNode->extendedAttributes->{"CustomGetPropertyNames"}) {
push(@implContent, "void ${className}::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode)\n");
push(@implContent, "{\n");
push(@implContent, " ${className}* thisObject = jsCast<${className}*>(object);\n");
push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, &s_info);\n");
- if ($dataNode->extendedAttributes->{"HasIndexGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"IndexedGetter"} || $dataNode->extendedAttributes->{"HasNumericIndexGetter"}) {
push(@implContent, " for (unsigned i = 0; i < static_cast<${implClassName}*>(thisObject->impl())->length(); ++i)\n");
push(@implContent, " propertyNames.add(Identifier::from(exec, i));\n");
}
}
}
- if ($dataNode->extendedAttributes->{"HasIndexGetter"}) {
+ if ($dataNode->extendedAttributes->{"IndexedGetter"}) {
push(@implContent, "\nJSValue ${className}::indexGetter(ExecState* exec, JSValue slotBase, unsigned index)\n");
push(@implContent, "{\n");
push(@implContent, " ${className}* thisObj = static_cast<$className*>(asObject(slotBase));\n");