Changeset 181156 in webkit
- Timestamp:
- Mar 6, 2015 8:30:23 AM (9 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 27 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r181155 r181156 1 2015-03-05 Darin Adler <darin@apple.com> 2 3 Make JavaScript binding get and set legacy event listener attributes directly 4 https://bugs.webkit.org/show_bug.cgi?id=142282 5 6 Reviewed by Antti Koivisto. 7 8 Test: fast/dom/legacy-event-handler-attributes.html 9 10 This patch changes the JavaScript getters and setters for these attributes 11 to work directly without requiring any functions in the C++ DOM implementation. 12 A subsequent patch will remove the now-unused C++ DOM implementation. 13 14 * Modules/webaudio/AudioScheduledSourceNode.cpp: 15 (WebCore::AudioScheduledSourceNode::setOnended): Remove code to set 16 m_hasEndedListener; this was incorrect since it only detected event listeners 17 set up with the event handler attribute, not with addEventListener. 18 (WebCore::AudioScheduledSourceNode::addEventListener): Added code to update 19 m_hasEndedListener after making changes to the event listeners. 20 (WebCore::AudioScheduledSourceNode::removeEventListener): Ditto. 21 (WebCore::AudioScheduledSourceNode::removeAllEventListeners): Ditto. 22 * Modules/webaudio/AudioScheduledSourceNode.h: Added above overrides. 23 24 * Modules/webaudio/ScriptProcessorNode.cpp: 25 (WebCore::ScriptProcessorNode::setOnaudioprocess): Remove code to set 26 m_hasAudioProcessListener; this was incorrect since it only detected event listeners 27 set up with the event handler attribute, not with addEventListener. 28 (WebCore::ScriptProcessorNode::addEventListener): Added code to update 29 m_hasAudioProcessListener after making changes to the event listeners. 30 (WebCore::ScriptProcessorNode::removeEventListener): Ditto. 31 (WebCore::ScriptProcessorNode::removeAllEventListeners): Ditto. 32 * Modules/webaudio/ScriptProcessorNode.h: Added above overrides. 33 34 * bindings/js/JSEventListener.cpp: 35 (WebCore::legacyEventListenerAttribute): Added. 36 (WebCore::createEventListenerForLegacyAttribute): Added. 37 (WebCore::setLegacyEventListenerAttribute): Added. 38 (WebCore::legacyWindowEventListenerAttribute): Added. 39 (WebCore::setLegacyWindowEventListenerAttribute): Added. 40 41 * bindings/js/JSEventListener.h: 42 (WebCore::createJSEventListenerForAttribute): Deleted. 43 44 * bindings/scripts/CodeGeneratorJS.pm: 45 (GenerateAttributeEventListenerCall): Deleted. 46 (LegacyEventListenerAttributeEventName): Added. 47 (LegacyEventListenerAttributePrefix): Added. 48 (GenerateImplementation): Use "auto" in lots of places to simplify the code 49 generation. Replaced the old inlined code to deal with legacy event listener 50 attributes with code that simply calls the new functions from JSEventLister.h. 51 (GenerateCallWith): Use "auto". 52 (GenerateConstructorDefinition): Ditto. 53 54 * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp: Updated expected 55 results since these now use auto. 56 * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp: Ditto. 57 * bindings/scripts/test/JS/JSTestEventConstructor.cpp: Ditto. 58 * bindings/scripts/test/JS/JSTestEventTarget.cpp: Ditto. 59 * bindings/scripts/test/JS/JSTestException.cpp: Ditto. 60 * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp: Ditto. 61 * bindings/scripts/test/JS/JSTestInterface.cpp: Ditto. 62 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Ditto. 63 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Ditto. 64 * bindings/scripts/test/JS/JSTestNode.cpp: Ditto. 65 * bindings/scripts/test/JS/JSTestNondeterministic.cpp: Ditto. 66 * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. 67 * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp: Ditto. 68 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Ditto. 69 * bindings/scripts/test/JS/JSTestTypedefs.cpp: Ditto. 70 * bindings/scripts/test/JS/JSattribute.cpp: Ditto. 71 * bindings/scripts/test/JS/JSreadonly.cpp: Ditto. 72 73 * dom/MessagePort.cpp: 74 (WebCore::MessagePort::addEventListener): Moved logic that calls the start 75 function in here from setOnmessage, since the latter will no longer be called. 76 * dom/MessagePort.h: Ditto. 77 1 78 2015-03-06 Myles C. Maxfield <mmaxfield@apple.com> 2 79 -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp
r176311 r181156 199 199 void AudioScheduledSourceNode::setOnended(PassRefPtr<EventListener> listener) 200 200 { 201 m_hasEndedListener = listener;202 201 setAttributeEventListener(eventNames().endedEvent, listener); 203 202 } … … 232 231 } 233 232 233 bool AudioScheduledSourceNode::addEventListener(const AtomicString& eventType, PassRefPtr<EventListener> listener, bool useCapture) 234 { 235 bool success = AudioNode::addEventListener(eventType, listener, useCapture); 236 if (success && eventType == eventNames().endedEvent) 237 m_hasEndedListener = hasEventListeners(eventNames().endedEvent); 238 return success; 239 } 240 241 bool AudioScheduledSourceNode::removeEventListener(const AtomicString& eventType, EventListener* listener, bool useCapture) 242 { 243 bool success = AudioNode::removeEventListener(eventType, listener, useCapture); 244 if (success && eventType == eventNames().endedEvent) 245 m_hasEndedListener = hasEventListeners(eventNames().endedEvent); 246 return success; 247 } 248 249 void AudioScheduledSourceNode::removeAllEventListeners() 250 { 251 m_hasEndedListener = false; 252 AudioNode::removeAllEventListeners(); 253 } 254 234 255 } // namespace WebCore 235 256 -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.h
r176311 r181156 108 108 109 109 static const double UnknownTime; 110 111 private: 112 bool addEventListener(const AtomicString& eventType, PassRefPtr<EventListener>, bool useCapture) override; 113 bool removeEventListener(const AtomicString& eventType, EventListener*, bool useCapture) override; 114 void removeAllEventListeners() override; 110 115 }; 111 116 -
trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp
r167131 r181156 220 220 void ScriptProcessorNode::setOnaudioprocess(PassRefPtr<EventListener> listener) 221 221 { 222 m_hasAudioProcessListener = listener;223 222 setAttributeEventListener(eventNames().audioprocessEvent, listener); 224 223 } … … 287 286 } 288 287 288 bool ScriptProcessorNode::addEventListener(const AtomicString& eventType, PassRefPtr<EventListener> listener, bool useCapture) 289 { 290 bool success = AudioNode::addEventListener(eventType, listener, useCapture); 291 if (success && eventType == eventNames().audioprocessEvent) 292 m_hasAudioProcessListener = hasEventListeners(eventNames().audioprocessEvent); 293 return success; 294 } 295 296 bool ScriptProcessorNode::removeEventListener(const AtomicString& eventType, EventListener* listener, bool useCapture) 297 { 298 bool success = AudioNode::removeEventListener(eventType, listener, useCapture); 299 if (success && eventType == eventNames().audioprocessEvent) 300 m_hasAudioProcessListener = hasEventListeners(eventNames().audioprocessEvent); 301 return success; 302 } 303 304 void ScriptProcessorNode::removeAllEventListeners() 305 { 306 m_hasAudioProcessListener = false; 307 AudioNode::removeAllEventListeners(); 308 } 309 289 310 } // namespace WebCore 290 311 -
trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.h
r162139 r181156 78 78 void fireProcessEvent(); 79 79 80 bool addEventListener(const AtomicString& eventType, PassRefPtr<EventListener>, bool useCapture) override; 81 bool removeEventListener(const AtomicString& eventType, EventListener*, bool useCapture) override; 82 void removeAllEventListeners() override; 83 80 84 // Double buffering 81 85 unsigned doubleBufferIndex() const { return m_doubleBufferIndex; } -
trunk/Source/WebCore/bindings/js/JSEventListener.cpp
r181024 r181156 24 24 #include "Event.h" 25 25 #include "Frame.h" 26 #include "HTMLElement.h" 26 27 #include "JSEvent.h" 27 28 #include "JSEventTarget.h" … … 171 172 } 172 173 174 static inline JSC::JSValue eventHandlerAttribute(EventListener* abstractListener, ScriptExecutionContext& context) 175 { 176 if (!abstractListener) 177 return jsNull(); 178 179 auto* listener = JSEventListener::cast(abstractListener); 180 if (!listener) 181 return jsNull(); 182 183 auto* function = listener->jsFunction(&context); 184 if (!function) 185 return jsNull(); 186 187 return function; 188 } 189 190 static inline RefPtr<JSEventListener> createEventListenerForEventHandlerAttribute(JSC::ExecState& state, JSC::JSValue listener, JSC::JSObject& wrapper) 191 { 192 if (!listener.isObject()) 193 return nullptr; 194 return JSEventListener::create(asObject(listener), &wrapper, true, currentWorld(&state)); 195 } 196 197 JSC::JSValue eventHandlerAttribute(EventTarget& target, const AtomicString& eventType) 198 { 199 return eventHandlerAttribute(target.getAttributeEventListener(eventType), *target.scriptExecutionContext()); 200 } 201 202 void setEventHandlerAttribute(JSC::ExecState& state, JSC::JSObject& wrapper, EventTarget& target, const AtomicString& eventType, JSC::JSValue value) 203 { 204 target.setAttributeEventListener(eventType, createEventListenerForEventHandlerAttribute(state, value, wrapper)); 205 } 206 207 JSC::JSValue windowForwardedEventHandlerAttribute(HTMLElement& element, const AtomicString& eventType) 208 { 209 auto& document = element.document(); 210 return eventHandlerAttribute(document.getWindowAttributeEventListener(eventType), document); 211 } 212 213 void setWindowForwardedEventHandlerAttribute(JSC::ExecState& state, JSC::JSObject& wrapper, HTMLElement& element, const AtomicString& eventType, JSC::JSValue value) 214 { 215 ASSERT(wrapper.globalObject()); 216 element.document().setWindowAttributeEventListener(eventType, createEventListenerForEventHandlerAttribute(state, value, *wrapper.globalObject())); 217 } 218 173 219 } // namespace WebCore -
trunk/Source/WebCore/bindings/js/JSEventListener.h
r181024 r181156 30 30 namespace WebCore { 31 31 32 class EventTarget; 33 class HTMLElement; 32 34 class JSDOMGlobalObject; 33 35 … … 76 78 }; 77 79 78 // For "onXXX" event attributes. 79 RefPtr<JSEventListener> createJSEventListenerForAttribute(JSC::ExecState&, JSC::JSValue listener, JSC::JSObject& wrapper); 80 // For "onxxx" attributes that automatically set up JavaScript event listeners. 81 JSC::JSValue eventHandlerAttribute(EventTarget&, const AtomicString& eventType); 82 void setEventHandlerAttribute(JSC::ExecState&, JSC::JSObject&, EventTarget&, const AtomicString& eventType, JSC::JSValue); 83 84 // Like the functions above, but for attributes that forward event handlers to the window object rather than setting them on the target. 85 JSC::JSValue windowForwardedEventHandlerAttribute(HTMLElement&, const AtomicString& eventType); 86 void setWindowForwardedEventHandlerAttribute(JSC::ExecState&, JSC::JSObject&, HTMLElement&, const AtomicString& eventType, JSC::JSValue); 80 87 81 88 Ref<JSEventListener> createJSEventListenerForAdd(JSC::ExecState&, JSC::JSObject& listener, JSC::JSObject& wrapper); … … 113 120 } 114 121 115 inline RefPtr<JSEventListener> createJSEventListenerForAttribute(JSC::ExecState& state, JSC::JSValue listener, JSC::JSObject& wrapper)116 {117 if (!listener.isObject())118 return nullptr;119 return JSEventListener::create(asObject(listener), &wrapper, true, currentWorld(&state));120 }121 122 122 inline Ref<JSEventListener> createJSEventListenerForRemove(JSC::ExecState& state, JSC::JSObject& listener, JSC::JSObject& wrapper) 123 123 { -
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
r181024 r181156 141 141 } 142 142 143 sub GenerateAttributeEventListenerCall 144 { 145 my $implSetterFunctionName = shift; 146 my $windowEventListener = shift; 147 148 my $wrapperObject = $windowEventListener ? "globalObject" : "castedThis"; 149 my @GenerateEventListenerImpl = (); 150 151 push(@GenerateEventListenerImpl, " impl.set$implSetterFunctionName(createJSEventListenerForAttribute(*exec, value, *$wrapperObject));\n"); 152 return @GenerateEventListenerImpl; 143 sub EventHandlerAttributeEventName 144 { 145 my $attribute = shift; 146 147 # Remove the "on" prefix. 148 my $eventType = substr($attribute->signature->name, 2); 149 150 # FIXME: Consider adding a property in the IDL file instead of hard coding these names. 151 152 $eventType = "show" if $eventType eq "display"; 153 154 # Note: These four names exist in HTMLElement.cpp. 155 $eventType = "webkitAnimationEnd" if $eventType eq "webkitanimationend"; 156 $eventType = "webkitAnimationIteration" if $eventType eq "webkitanimationiteration"; 157 $eventType = "webkitAnimationStart" if $eventType eq "webkitanimationstart"; 158 $eventType = "webkitTransitionEnd" if $eventType eq "webkittransitionend"; 159 160 return "eventNames().${eventType}Event"; 153 161 } 154 162 … … 1970 1978 push(@implContent, " VM& vm = exec->vm();\n"); 1971 1979 push(@implContent, " UNUSED_PARAM(vm);\n"); 1972 push(@implContent, " ${className}Prototype* thisObject = jsCast<${className}Prototype*>(object);\n");1980 push(@implContent, " auto* thisObject = jsCast<${className}Prototype*>(object);\n"); 1973 1981 1974 1982 if ($numConstants eq 0 && $numFunctions eq 0 && $numPrototypeAttributes eq 0) { … … 2013 2021 push(@implContent, "void ${className}Prototype::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot& slot)\n"); 2014 2022 push(@implContent, "{\n"); 2015 push(@implContent, " ${className}Prototype* thisObject = jsCast<${className}Prototype*>(cell);\n");2023 push(@implContent, " auto* thisObject = jsCast<${className}Prototype*>(cell);\n"); 2016 2024 push(@implContent, " if (thisObject->putDelegate(exec, propertyName, value, slot))\n"); 2017 2025 push(@implContent, " return;\n"); … … 2107 2115 push(@implContent, "bool ${className}::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot)\n"); 2108 2116 push(@implContent, "{\n"); 2109 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(object);\n");2117 push(@implContent, " auto* thisObject = jsCast<${className}*>(object);\n"); 2110 2118 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2111 2119 push(@implContent, GenerateGetOwnPropertySlotBody($interface, $interfaceName, $className, $numInstanceAttributes > 0, 0)); … … 2118 2126 push(@implContent, "bool ${className}::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned index, PropertySlot& slot)\n"); 2119 2127 push(@implContent, "{\n"); 2120 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(object);\n");2128 push(@implContent, " auto* thisObject = jsCast<${className}*>(object);\n"); 2121 2129 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2122 2130 … … 2191 2199 if (!$attribute->isStatic || $attribute->signature->type =~ /Constructor$/) { 2192 2200 if ($interface->extendedAttributes->{"CustomProxyToJSObject"}) { 2193 push(@implContent, " ${className}* castedThis = to${className}(JSValue::decode(thisValue));\n");2201 push(@implContent, " auto* castedThis = to${className}(JSValue::decode(thisValue));\n"); 2194 2202 } elsif (AttributeShouldBeOnInstance($interface, $attribute)) { 2195 push(@implContent, " ${className}* castedThis = jsCast<JS${interfaceName}*>(slotBase);\n");2203 push(@implContent, " auto* castedThis = jsCast<JS${interfaceName}*>(slotBase);\n"); 2196 2204 if (InterfaceRequiresAttributesOnInstanceForCompatibility($interface)) { 2197 2205 push(@implContent, " ${className}* castedThisObject = " . GetCastingHelperForThisObject($interface) . "(JSValue::decode(thisValue));\n"); … … 2284 2292 } elsif ($attribute->signature->extendedAttributes->{"CheckSecurityForNode"}) { 2285 2293 $implIncludes{"JSDOMBinding.h"} = 1; 2286 push(@implContent, " $implType& impl = castedThis->impl();\n");2294 push(@implContent, " auto& impl = castedThis->impl();\n"); 2287 2295 push(@implContent, " return JSValue::encode(shouldAllowAccessToNode(exec, impl." . $attribute->signature->name . "()) ? " . NativeToJSValue($attribute->signature, 0, $interfaceName, "impl.$implGetterFunctionName()", "castedThis") . " : jsNull());\n"); 2288 2296 } elsif ($type eq "EventListener") { 2289 $implIncludes{"EventListener.h"} = 1; 2297 my $getter = $attribute->signature->extendedAttributes->{"JSWindowEventListener"} ? "windowForwardedEventHandlerAttribute" : "eventHandlerAttribute"; 2298 my $eventName = EventHandlerAttributeEventName($attribute); 2290 2299 push(@implContent, " UNUSED_PARAM(exec);\n"); 2291 push(@implContent, " $implType& impl = castedThis->impl();\n"); 2292 push(@implContent, " if (EventListener* listener = impl.$implGetterFunctionName()) {\n"); 2293 push(@implContent, " if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {\n"); 2294 if ($interfaceName eq "Document" || $codeGenerator->InheritsInterface($interface, "WorkerGlobalScope")) { 2295 push(@implContent, " if (JSObject* jsFunction = jsListener->jsFunction(&impl))\n"); 2296 } else { 2297 push(@implContent, " if (JSObject* jsFunction = jsListener->jsFunction(impl.scriptExecutionContext()))\n"); 2298 } 2299 push(@implContent, " return JSValue::encode(jsFunction);\n"); 2300 push(@implContent, " }\n"); 2301 push(@implContent, " }\n"); 2302 push(@implContent, " return JSValue::encode(jsNull());\n"); 2300 push(@implContent, " return JSValue::encode($getter(castedThis->impl(), $eventName));\n"); 2303 2301 } elsif ($attribute->signature->type =~ /Constructor$/) { 2304 2302 my $constructorType = $attribute->signature->type; … … 2353 2351 unshift(@arguments, @callWithArgs); 2354 2352 my $jsType = NativeToJSValue($attribute->signature, 0, $interfaceName, "${functionName}(" . join(", ", @arguments) . ")", "castedThis"); 2355 push(@implContent, " $implType& impl = castedThis->impl();\n") if !$attribute->isStatic;2353 push(@implContent, " auto& impl = castedThis->impl();\n") if !$attribute->isStatic; 2356 2354 if ($codeGenerator->IsSVGAnimatedType($type)) { 2357 2355 push(@implContent, " RefPtr<$type> obj = $jsType;\n"); … … 2382 2380 push(@implContent, " JSValue result = " . NativeToJSValue($attribute->signature, 0, $interfaceName, "impl.$implGetterFunctionName(" . join(", ", @arguments) . ")", "castedThis") . ";\n"); 2383 2381 } else { 2384 push(@implContent, " $implType& impl = castedThis->impl();\n");2382 push(@implContent, " auto& impl = castedThis->impl();\n"); 2385 2383 push(@implContent, " JSValue result = " . NativeToJSValue($attribute->signature, 0, $interfaceName, "impl.$implGetterFunctionName(" . join(", ", @arguments) . ")", "castedThis") . ";\n"); 2386 2384 } … … 2473 2471 push(@implContent, "void ${className}::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot& slot)\n"); 2474 2472 push(@implContent, "{\n"); 2475 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(cell);\n");2473 push(@implContent, " auto* thisObject = jsCast<${className}*>(cell);\n"); 2476 2474 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2477 2475 if ($interface->extendedAttributes->{"CustomIndexedSetter"}) { … … 2493 2491 push(@implContent, "void ${className}::putByIndex(JSCell* cell, ExecState* exec, unsigned index, JSValue value, bool shouldThrow)\n"); 2494 2492 push(@implContent, "{\n"); 2495 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(cell);\n");2493 push(@implContent, " auto* thisObject = jsCast<${className}*>(cell);\n"); 2496 2494 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2497 2495 … … 2549 2547 } elsif (AttributeShouldBeOnInstance($interface, $attribute)) { 2550 2548 push(@implContent, " UNUSED_PARAM(thisValue);\n"); 2551 push(@implContent, " ${className}* castedThis = jsCast<JS${interfaceName}*>(baseObject);\n");2549 push(@implContent, " auto* castedThis = jsCast<JS${interfaceName}*>(baseObject);\n"); 2552 2550 if (InterfaceRequiresAttributesOnInstanceForCompatibility($interface)) { 2553 2551 push(@implContent, " ${className}* castedThisObject = " . GetCastingHelperForThisObject($interface) . "(JSValue::decode(thisValue));\n"); … … 2581 2579 push(@implContent, " castedThis->set$implSetterFunctionName(exec, value);\n"); 2582 2580 } elsif ($type eq "EventListener") { 2583 $implIncludes{"JSEventListener.h"} = 1; 2584 push(@implContent, " UNUSED_PARAM(exec);\n"); 2585 my $windowEventListener = $attribute->signature->extendedAttributes->{"JSWindowEventListener"}; 2586 if ($windowEventListener) { 2587 push(@implContent, " JSDOMGlobalObject* globalObject = castedThis->globalObject();\n"); 2588 } 2589 push(@implContent, " $implType& impl = castedThis->impl();\n"); 2581 my $eventName = EventHandlerAttributeEventName($attribute); 2582 # FIXME: Find a way to do this special case without hardcoding the class and attribute names here. 2590 2583 if ((($interfaceName eq "DOMWindow") or ($interfaceName eq "WorkerGlobalScope")) and $name eq "onerror") { 2591 2584 $implIncludes{"JSErrorHandler.h"} = 1; 2592 push(@implContent, " impl.set$implSetterFunctionName(createJSErrorHandler(exec, value, castedThis));\n");2585 push(@implContent, " castedThis->impl().setAttributeEventListener($eventName, createJSErrorHandler(exec, value, castedThis));\n"); 2593 2586 } else { 2594 push(@implContent, GenerateAttributeEventListenerCall($implSetterFunctionName, $windowEventListener)); 2587 $implIncludes{"JSEventListener.h"} = 1; 2588 my $setter = $attribute->signature->extendedAttributes->{"JSWindowEventListener"} ? "setWindowForwardedEventHandlerAttribute" : "setEventHandlerAttribute"; 2589 push(@implContent, " $setter(*exec, *castedThis, castedThis->impl(), $eventName, value);\n"); 2595 2590 } 2596 2591 } elsif ($attribute->signature->type =~ /Constructor$/) { … … 2603 2598 AddToImplIncludes("JS" . $constructorType . ".h", $attribute->signature->extendedAttributes->{"Conditional"}); 2604 2599 } 2605 push(@implContent, " // Shadowing a built-in constructor \n");2600 push(@implContent, " // Shadowing a built-in constructor.\n"); 2606 2601 push(@implContent, " castedThis->putDirect(exec->vm(), Identifier(exec, \"$name\"), value);\n"); 2607 2602 } elsif ($attribute->signature->extendedAttributes->{"Replaceable"}) { 2608 push(@implContent, " // Shadowing a built-in object \n");2603 push(@implContent, " // Shadowing a built-in object.\n"); 2609 2604 push(@implContent, " castedThis->putDirect(exec->vm(), Identifier(exec, \"$name\"), value);\n"); 2610 2605 } else { 2611 2606 if (!$attribute->isStatic) { 2612 push(@implContent, " $implType& impl = castedThis->impl();\n");2607 push(@implContent, " auto& impl = castedThis->impl();\n"); 2613 2608 } 2614 2609 push(@implContent, " ExceptionCode ec = 0;\n") if $setterRaisesException; … … 2713 2708 push(@implContent, "void ${className}::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode)\n"); 2714 2709 push(@implContent, "{\n"); 2715 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(object);\n");2710 push(@implContent, " auto* thisObject = jsCast<${className}*>(object);\n"); 2716 2711 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2717 2712 push(@implContent, " for (unsigned i = 0, count = thisObject->impl().length(); i < count; ++i)\n"); … … 2820 2815 push(@implContent, " return JSValue::encode(castedThis->" . $functionImplementationName . "(exec));\n"); 2821 2816 } else { 2822 push(@implContent, " $implType& impl = castedThis->impl();\n");2817 push(@implContent, " auto& impl = castedThis->impl();\n"); 2823 2818 if ($svgPropertyType) { 2824 2819 push(@implContent, " if (impl.isReadOnly()) {\n"); … … 2870 2865 push(@implContent, "void ${className}::visitChildren(JSCell* cell, SlotVisitor& visitor)\n"); 2871 2866 push(@implContent, "{\n"); 2872 push(@implContent, " ${className}* thisObject = jsCast<${className}*>(cell);\n");2867 push(@implContent, " auto* thisObject = jsCast<${className}*>(cell);\n"); 2873 2868 push(@implContent, " ASSERT_GC_OBJECT_INHERITS(thisObject, info());\n"); 2874 2869 push(@implContent, " Base::visitChildren(thisObject, visitor);\n"); … … 2914 2909 push(@implContent, "EncodedJSValue ${className}::nameGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)\n"); 2915 2910 push(@implContent, "{\n"); 2916 push(@implContent, " ${className}* thisObj= jsCast<$className*>(slotBase);\n");2917 push(@implContent, " return JSValue::encode(toJS(exec, thisObj ->globalObject(), thisObj->impl().namedItem(propertyNameToAtomicString(propertyName))));\n");2911 push(@implContent, " auto* thisObject = jsCast<$className*>(slotBase);\n"); 2912 push(@implContent, " return JSValue::encode(toJS(exec, thisObject->globalObject(), thisObject->impl().namedItem(propertyNameToAtomicString(propertyName))));\n"); 2918 2913 push(@implContent, "}\n\n"); 2919 2914 } … … 2945 2940 my $emittedJSCast = 0; 2946 2941 if ($codeGenerator->InheritsExtendedAttribute($interface, "ActiveDOMObject")) { 2947 push(@implContent, " JS${interfaceName}* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n");2942 push(@implContent, " auto* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n"); 2948 2943 $emittedJSCast = 1; 2949 2944 push(@implContent, " if (js${interfaceName}->impl().hasPendingActivity())\n"); … … 2952 2947 if ($codeGenerator->InheritsExtendedAttribute($interface, "EventTarget")) { 2953 2948 if (!$emittedJSCast) { 2954 push(@implContent, " JS${interfaceName}* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n");2949 push(@implContent, " auto* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n"); 2955 2950 $emittedJSCast = 1; 2956 2951 } … … 2960 2955 if ($codeGenerator->InheritsInterface($interface, "Node")) { 2961 2956 if (!$emittedJSCast) { 2962 push(@implContent, " JS${interfaceName}* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n");2957 push(@implContent, " auto* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n"); 2963 2958 $emittedJSCast = 1; 2964 2959 } … … 2968 2963 if (GetGenerateIsReachable($interface)) { 2969 2964 if (!$emittedJSCast) { 2970 push(@implContent, " JS${interfaceName}* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n");2965 push(@implContent, " auto* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n"); 2971 2966 $emittedJSCast = 1; 2972 2967 } … … 3025 3020 push(@implContent, "void JS${interfaceName}Owner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)\n"); 3026 3021 push(@implContent, "{\n"); 3027 push(@implContent, " JS${interfaceName}* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n");3028 push(@implContent, " DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);\n");3022 push(@implContent, " auto* js${interfaceName} = jsCast<JS${interfaceName}*>(handle.slot()->asCell());\n"); 3023 push(@implContent, " auto& world = *static_cast<DOMWrapperWorld*>(context);\n"); 3029 3024 push(@implContent, " uncacheWrapper(world, &js${interfaceName}->impl(), js${interfaceName});\n"); 3030 3025 push(@implContent, " js${interfaceName}->releaseImpl();\n"); … … 3133 3128 } 3134 3129 if ($codeGenerator->ExtendedAttributeContains($callWith, "ScriptExecutionContext")) { 3135 push(@$outputArray, " ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();\n");3130 push(@$outputArray, " auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();\n"); 3136 3131 push(@$outputArray, " if (!scriptContext)\n"); 3137 3132 push(@$outputArray, " return" . ($returnValue ? " " . $returnValue : "") . ";\n"); … … 4510 4505 EncodedJSValue JSC_HOST_CALL ${constructorClassName}::construct${className}(ExecState* exec) 4511 4506 { 4512 ${constructorClassName}* jsConstructor = jsCast<${constructorClassName}*>(exec->callee());4507 auto* jsConstructor = jsCast<${constructorClassName}*>(exec->callee()); 4513 4508 4514 4509 ScriptExecutionContext* executionContext = jsConstructor->scriptExecutionContext(); … … 4577 4572 push(@$outputArray, "EncodedJSValue JSC_HOST_CALL ${constructorClassName}::construct${className}${overloadedIndexString}(ExecState* exec)\n"); 4578 4573 push(@$outputArray, "{\n"); 4579 push(@$outputArray, " ${constructorClassName}* castedThis = jsCast<${constructorClassName}*>(exec->callee());\n");4574 push(@$outputArray, " auto* castedThis = jsCast<${constructorClassName}*>(exec->callee());\n"); 4580 4575 4581 4576 my @constructorArgList; … … 4607 4602 push(@$outputArray, " if (!context)\n"); 4608 4603 push(@$outputArray, " return throwConstructorDocumentUnavailableError(*exec, \"${interfaceName}\");\n"); 4609 push(@$outputArray, " Document& document = downcast<Document>(*context);\n");4604 push(@$outputArray, " auto& document = downcast<Document>(*context);\n"); 4610 4605 } 4611 4606 if ($generatingNamedConstructor) { -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp
r181024 r181156 169 169 bool JSTestActiveDOMObject::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 170 170 { 171 JSTestActiveDOMObject* thisObject = jsCast<JSTestActiveDOMObject*>(object);171 auto* thisObject = jsCast<JSTestActiveDOMObject*>(object); 172 172 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 173 173 return getStaticValueSlot<JSTestActiveDOMObject, Base>(exec, JSTestActiveDOMObjectTable, thisObject, propertyName, slot); … … 179 179 UNUSED_PARAM(slotBase); 180 180 UNUSED_PARAM(thisValue); 181 JSTestActiveDOMObject* castedThis = jsCast<JSTestActiveDOMObject*>(slotBase);181 auto* castedThis = jsCast<JSTestActiveDOMObject*>(slotBase); 182 182 if (!BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis->impl())) 183 183 return JSValue::encode(jsUndefined()); 184 TestActiveDOMObject& impl = castedThis->impl();184 auto& impl = castedThis->impl(); 185 185 JSValue result = jsNumber(impl.excitingAttr()); 186 186 return JSValue::encode(result); … … 212 212 if (!BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis->impl())) 213 213 return JSValue::encode(jsUndefined()); 214 TestActiveDOMObject& impl = castedThis->impl();214 auto& impl = castedThis->impl(); 215 215 if (UNLIKELY(exec->argumentCount() < 1)) 216 216 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 229 229 return throwThisTypeError(*exec, "TestActiveDOMObject", "postMessage"); 230 230 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestActiveDOMObject::info()); 231 TestActiveDOMObject& impl = castedThis->impl();231 auto& impl = castedThis->impl(); 232 232 if (UNLIKELY(exec->argumentCount() < 1)) 233 233 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 248 248 void JSTestActiveDOMObjectOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 249 249 { 250 JSTestActiveDOMObject* jsTestActiveDOMObject = jsCast<JSTestActiveDOMObject*>(handle.slot()->asCell());251 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);250 auto* jsTestActiveDOMObject = jsCast<JSTestActiveDOMObject*>(handle.slot()->asCell()); 251 auto& world = *static_cast<DOMWrapperWorld*>(context); 252 252 uncacheWrapper(world, &jsTestActiveDOMObject->impl(), jsTestActiveDOMObject); 253 253 jsTestActiveDOMObject->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp
r181024 r181156 162 162 bool JSTestCustomNamedGetter::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 163 163 { 164 JSTestCustomNamedGetter* thisObject = jsCast<JSTestCustomNamedGetter*>(object);164 auto* thisObject = jsCast<JSTestCustomNamedGetter*>(object); 165 165 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 166 166 if (canGetItemsForName(exec, &thisObject->impl(), propertyName)) { … … 173 173 bool JSTestCustomNamedGetter::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned index, PropertySlot& slot) 174 174 { 175 JSTestCustomNamedGetter* thisObject = jsCast<JSTestCustomNamedGetter*>(object);175 auto* thisObject = jsCast<JSTestCustomNamedGetter*>(object); 176 176 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 177 177 PropertyName propertyName = Identifier::from(exec, index); … … 203 203 return throwThisTypeError(*exec, "TestCustomNamedGetter", "anotherFunction"); 204 204 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestCustomNamedGetter::info()); 205 TestCustomNamedGetter& impl = castedThis->impl();205 auto& impl = castedThis->impl(); 206 206 if (UNLIKELY(exec->argumentCount() < 1)) 207 207 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 222 222 void JSTestCustomNamedGetterOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 223 223 { 224 JSTestCustomNamedGetter* jsTestCustomNamedGetter = jsCast<JSTestCustomNamedGetter*>(handle.slot()->asCell());225 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);224 auto* jsTestCustomNamedGetter = jsCast<JSTestCustomNamedGetter*>(handle.slot()->asCell()); 225 auto& world = *static_cast<DOMWrapperWorld*>(context); 226 226 uncacheWrapper(world, &jsTestCustomNamedGetter->impl(), jsTestCustomNamedGetter); 227 227 jsTestCustomNamedGetter->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp
r181024 r181156 92 92 EncodedJSValue JSC_HOST_CALL JSTestEventConstructorConstructor::constructJSTestEventConstructor(ExecState* exec) 93 93 { 94 JSTestEventConstructorConstructor* jsConstructor = jsCast<JSTestEventConstructorConstructor*>(exec->callee());94 auto* jsConstructor = jsCast<JSTestEventConstructorConstructor*>(exec->callee()); 95 95 96 96 ScriptExecutionContext* executionContext = jsConstructor->scriptExecutionContext(); … … 206 206 return throwGetterTypeError(*exec, "TestEventConstructor", "attr1"); 207 207 } 208 TestEventConstructor& impl = castedThis->impl();208 auto& impl = castedThis->impl(); 209 209 JSValue result = jsStringWithCache(exec, impl.attr1()); 210 210 return JSValue::encode(result); … … 223 223 return throwGetterTypeError(*exec, "TestEventConstructor", "attr2"); 224 224 } 225 TestEventConstructor& impl = castedThis->impl();225 auto& impl = castedThis->impl(); 226 226 JSValue result = jsStringWithCache(exec, impl.attr2()); 227 227 return JSValue::encode(result); … … 251 251 void JSTestEventConstructorOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 252 252 { 253 JSTestEventConstructor* jsTestEventConstructor = jsCast<JSTestEventConstructor*>(handle.slot()->asCell());254 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);253 auto* jsTestEventConstructor = jsCast<JSTestEventConstructor*>(handle.slot()->asCell()); 254 auto& world = *static_cast<DOMWrapperWorld*>(context); 255 255 uncacheWrapper(world, &jsTestEventConstructor->impl(), jsTestEventConstructor); 256 256 jsTestEventConstructor->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp
r181024 r181156 174 174 bool JSTestEventTarget::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 175 175 { 176 JSTestEventTarget* thisObject = jsCast<JSTestEventTarget*>(object);176 auto* thisObject = jsCast<JSTestEventTarget*>(object); 177 177 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 178 178 const HashTableValue* entry = getStaticValueSlotEntryWithoutCaching<JSTestEventTarget>(exec, propertyName); … … 196 196 bool JSTestEventTarget::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned index, PropertySlot& slot) 197 197 { 198 JSTestEventTarget* thisObject = jsCast<JSTestEventTarget*>(object);198 auto* thisObject = jsCast<JSTestEventTarget*>(object); 199 199 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 200 200 if (index < thisObject->impl().length()) { … … 221 221 void JSTestEventTarget::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode) 222 222 { 223 JSTestEventTarget* thisObject = jsCast<JSTestEventTarget*>(object);223 auto* thisObject = jsCast<JSTestEventTarget*>(object); 224 224 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 225 225 for (unsigned i = 0, count = thisObject->impl().length(); i < count; ++i) … … 240 240 return throwThisTypeError(*exec, "TestEventTarget", "item"); 241 241 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info()); 242 TestEventTarget& impl = castedThis->impl();242 auto& impl = castedThis->impl(); 243 243 if (UNLIKELY(exec->argumentCount() < 1)) 244 244 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 261 261 return throwThisTypeError(*exec, "TestEventTarget", "addEventListener"); 262 262 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info()); 263 TestEventTarget& impl = castedThis->impl();263 auto& impl = castedThis->impl(); 264 264 JSValue listener = exec->argument(1); 265 265 if (UNLIKELY(!listener.isObject())) … … 276 276 return throwThisTypeError(*exec, "TestEventTarget", "removeEventListener"); 277 277 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info()); 278 TestEventTarget& impl = castedThis->impl();278 auto& impl = castedThis->impl(); 279 279 JSValue listener = exec->argument(1); 280 280 if (UNLIKELY(!listener.isObject())) … … 291 291 return throwThisTypeError(*exec, "TestEventTarget", "dispatchEvent"); 292 292 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info()); 293 TestEventTarget& impl = castedThis->impl();293 auto& impl = castedThis->impl(); 294 294 if (UNLIKELY(exec->argumentCount() < 1)) 295 295 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 306 306 void JSTestEventTarget::visitChildren(JSCell* cell, SlotVisitor& visitor) 307 307 { 308 JSTestEventTarget* thisObject = jsCast<JSTestEventTarget*>(cell);308 auto* thisObject = jsCast<JSTestEventTarget*>(cell); 309 309 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 310 310 Base::visitChildren(thisObject, visitor); … … 314 314 bool JSTestEventTargetOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) 315 315 { 316 JSTestEventTarget* jsTestEventTarget = jsCast<JSTestEventTarget*>(handle.slot()->asCell());316 auto* jsTestEventTarget = jsCast<JSTestEventTarget*>(handle.slot()->asCell()); 317 317 if (jsTestEventTarget->impl().isFiringEventListeners()) 318 318 return true; … … 323 323 void JSTestEventTargetOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 324 324 { 325 JSTestEventTarget* jsTestEventTarget = jsCast<JSTestEventTarget*>(handle.slot()->asCell());326 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);325 auto* jsTestEventTarget = jsCast<JSTestEventTarget*>(handle.slot()->asCell()); 326 auto& world = *static_cast<DOMWrapperWorld*>(context); 327 327 uncacheWrapper(world, &jsTestEventTarget->impl(), jsTestEventTarget); 328 328 jsTestEventTarget->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp
r181024 r181156 159 159 bool JSTestException::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 160 160 { 161 JSTestException* thisObject = jsCast<JSTestException*>(object);161 auto* thisObject = jsCast<JSTestException*>(object); 162 162 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 163 163 return getStaticValueSlot<JSTestException, Base>(exec, JSTestExceptionTable, thisObject, propertyName, slot); … … 169 169 UNUSED_PARAM(slotBase); 170 170 UNUSED_PARAM(thisValue); 171 JSTestException* castedThis = jsCast<JSTestException*>(slotBase);172 TestException& impl = castedThis->impl();171 auto* castedThis = jsCast<JSTestException*>(slotBase); 172 auto& impl = castedThis->impl(); 173 173 JSValue result = jsStringWithCache(exec, impl.name()); 174 174 return JSValue::encode(result); … … 198 198 void JSTestExceptionOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 199 199 { 200 JSTestException* jsTestException = jsCast<JSTestException*>(handle.slot()->asCell());201 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);200 auto* jsTestException = jsCast<JSTestException*>(handle.slot()->asCell()); 201 auto& world = *static_cast<DOMWrapperWorld*>(context); 202 202 uncacheWrapper(world, &jsTestException->impl(), jsTestException); 203 203 jsTestException->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp
r181024 r181156 161 161 bool JSTestGenerateIsReachableOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) 162 162 { 163 JSTestGenerateIsReachable* jsTestGenerateIsReachable = jsCast<JSTestGenerateIsReachable*>(handle.slot()->asCell());163 auto* jsTestGenerateIsReachable = jsCast<JSTestGenerateIsReachable*>(handle.slot()->asCell()); 164 164 if (!isObservable(jsTestGenerateIsReachable)) 165 165 return false; … … 170 170 void JSTestGenerateIsReachableOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 171 171 { 172 JSTestGenerateIsReachable* jsTestGenerateIsReachable = jsCast<JSTestGenerateIsReachable*>(handle.slot()->asCell());173 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);172 auto* jsTestGenerateIsReachable = jsCast<JSTestGenerateIsReachable*>(handle.slot()->asCell()); 173 auto& world = *static_cast<DOMWrapperWorld*>(context); 174 174 uncacheWrapper(world, &jsTestGenerateIsReachable->impl(), jsTestGenerateIsReachable); 175 175 jsTestGenerateIsReachable->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp
r181024 r181156 272 272 EncodedJSValue JSC_HOST_CALL JSTestInterfaceConstructor::constructJSTestInterface(ExecState* exec) 273 273 { 274 JSTestInterfaceConstructor* castedThis = jsCast<JSTestInterfaceConstructor*>(exec->callee());274 auto* castedThis = jsCast<JSTestInterfaceConstructor*>(exec->callee()); 275 275 if (UNLIKELY(exec->argumentCount() < 1)) 276 276 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 443 443 bool JSTestInterface::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 444 444 { 445 JSTestInterface* thisObject = jsCast<JSTestInterface*>(object);445 auto* thisObject = jsCast<JSTestInterface*>(object); 446 446 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 447 447 return getStaticValueSlot<JSTestInterface, Base>(exec, JSTestInterfaceTable, thisObject, propertyName, slot); … … 484 484 return throwGetterTypeError(*exec, "TestInterface", "implementsStr1"); 485 485 } 486 TestInterface& impl = castedThis->impl();486 auto& impl = castedThis->impl(); 487 487 JSValue result = jsStringWithCache(exec, impl.implementsStr1()); 488 488 return JSValue::encode(result); … … 503 503 return throwGetterTypeError(*exec, "TestInterface", "implementsStr2"); 504 504 } 505 TestInterface& impl = castedThis->impl();505 auto& impl = castedThis->impl(); 506 506 JSValue result = jsStringWithCache(exec, impl.implementsStr2()); 507 507 return JSValue::encode(result); … … 516 516 UNUSED_PARAM(slotBase); 517 517 UNUSED_PARAM(thisValue); 518 JSTestInterface* castedThis = jsCast<JSTestInterface*>(slotBase);518 auto* castedThis = jsCast<JSTestInterface*>(slotBase); 519 519 return JSValue::encode(castedThis->implementsStr3(exec)); 520 520 } … … 534 534 return throwGetterTypeError(*exec, "TestInterface", "implementsNode"); 535 535 } 536 TestInterface& impl = castedThis->impl();536 auto& impl = castedThis->impl(); 537 537 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.implementsNode())); 538 538 return JSValue::encode(result); … … 577 577 return throwGetterTypeError(*exec, "TestInterface", "supplementalStr1"); 578 578 } 579 TestInterface& impl = castedThis->impl();579 auto& impl = castedThis->impl(); 580 580 JSValue result = jsStringWithCache(exec, TestSupplemental::supplementalStr1(&impl)); 581 581 return JSValue::encode(result); … … 596 596 return throwGetterTypeError(*exec, "TestInterface", "supplementalStr2"); 597 597 } 598 TestInterface& impl = castedThis->impl();598 auto& impl = castedThis->impl(); 599 599 JSValue result = jsStringWithCache(exec, TestSupplemental::supplementalStr2(&impl)); 600 600 return JSValue::encode(result); … … 609 609 UNUSED_PARAM(slotBase); 610 610 UNUSED_PARAM(thisValue); 611 JSTestInterface* castedThis = jsCast<JSTestInterface*>(slotBase);611 auto* castedThis = jsCast<JSTestInterface*>(slotBase); 612 612 return JSValue::encode(castedThis->supplementalStr3(exec)); 613 613 } … … 627 627 return throwGetterTypeError(*exec, "TestInterface", "supplementalNode"); 628 628 } 629 TestInterface& impl = castedThis->impl();629 auto& impl = castedThis->impl(); 630 630 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(TestSupplemental::supplementalNode(&impl))); 631 631 return JSValue::encode(result); … … 644 644 void JSTestInterface::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot& slot) 645 645 { 646 JSTestInterface* thisObject = jsCast<JSTestInterface*>(cell);646 auto* thisObject = jsCast<JSTestInterface*>(cell); 647 647 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 648 648 if (thisObject->putDelegate(exec, propertyName, value, slot)) … … 653 653 void JSTestInterface::putByIndex(JSCell* cell, ExecState* exec, unsigned index, JSValue value, bool shouldThrow) 654 654 { 655 JSTestInterface* thisObject = jsCast<JSTestInterface*>(cell);655 auto* thisObject = jsCast<JSTestInterface*>(cell); 656 656 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 657 657 PropertyName propertyName = Identifier::from(exec, index); … … 688 688 return; 689 689 } 690 TestInterface& impl = castedThis->impl();690 auto& impl = castedThis->impl(); 691 691 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 692 692 if (UNLIKELY(exec->hadException())) … … 703 703 UNUSED_PARAM(baseObject); 704 704 UNUSED_PARAM(thisValue); 705 JSTestInterface* castedThis = jsCast<JSTestInterface*>(baseObject);705 auto* castedThis = jsCast<JSTestInterface*>(baseObject); 706 706 UNUSED_PARAM(thisValue); 707 707 UNUSED_PARAM(exec); … … 724 724 return; 725 725 } 726 TestInterface& impl = castedThis->impl();726 auto& impl = castedThis->impl(); 727 727 Node* nativeValue(JSNode::toWrapped(value)); 728 728 if (UNLIKELY(exec->hadException())) … … 759 759 return; 760 760 } 761 TestInterface& impl = castedThis->impl();761 auto& impl = castedThis->impl(); 762 762 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 763 763 if (UNLIKELY(exec->hadException())) … … 774 774 UNUSED_PARAM(baseObject); 775 775 UNUSED_PARAM(thisValue); 776 JSTestInterface* castedThis = jsCast<JSTestInterface*>(baseObject);776 auto* castedThis = jsCast<JSTestInterface*>(baseObject); 777 777 UNUSED_PARAM(thisValue); 778 778 UNUSED_PARAM(exec); … … 795 795 return; 796 796 } 797 TestInterface& impl = castedThis->impl();797 auto& impl = castedThis->impl(); 798 798 Node* nativeValue(JSNode::toWrapped(value)); 799 799 if (UNLIKELY(exec->hadException())) … … 817 817 return throwThisTypeError(*exec, "TestInterface", "implementsMethod1"); 818 818 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info()); 819 TestInterface& impl = castedThis->impl();819 auto& impl = castedThis->impl(); 820 820 impl.implementsMethod1(); 821 821 return JSValue::encode(jsUndefined()); … … 832 832 return throwThisTypeError(*exec, "TestInterface", "implementsMethod2"); 833 833 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info()); 834 TestInterface& impl = castedThis->impl();834 auto& impl = castedThis->impl(); 835 835 if (UNLIKELY(exec->argumentCount() < 2)) 836 836 return throwVMError(exec, createNotEnoughArgumentsError(exec)); 837 837 ExceptionCode ec = 0; 838 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();838 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 839 839 if (!scriptContext) 840 840 return JSValue::encode(jsUndefined()); … … 883 883 return throwThisTypeError(*exec, "TestInterface", "supplementalMethod1"); 884 884 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info()); 885 TestInterface& impl = castedThis->impl();885 auto& impl = castedThis->impl(); 886 886 TestSupplemental::supplementalMethod1(&impl); 887 887 return JSValue::encode(jsUndefined()); … … 898 898 return throwThisTypeError(*exec, "TestInterface", "supplementalMethod2"); 899 899 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info()); 900 TestInterface& impl = castedThis->impl();900 auto& impl = castedThis->impl(); 901 901 if (UNLIKELY(exec->argumentCount() < 2)) 902 902 return throwVMError(exec, createNotEnoughArgumentsError(exec)); 903 903 ExceptionCode ec = 0; 904 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();904 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 905 905 if (!scriptContext) 906 906 return JSValue::encode(jsUndefined()); … … 943 943 bool JSTestInterfaceOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) 944 944 { 945 JSTestInterface* jsTestInterface = jsCast<JSTestInterface*>(handle.slot()->asCell());945 auto* jsTestInterface = jsCast<JSTestInterface*>(handle.slot()->asCell()); 946 946 if (jsTestInterface->impl().hasPendingActivity()) 947 947 return true; … … 952 952 void JSTestInterfaceOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 953 953 { 954 JSTestInterface* jsTestInterface = jsCast<JSTestInterface*>(handle.slot()->asCell());955 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);954 auto* jsTestInterface = jsCast<JSTestInterface*>(handle.slot()->asCell()); 955 auto& world = *static_cast<DOMWrapperWorld*>(context); 956 956 uncacheWrapper(world, &jsTestInterface->impl(), jsTestInterface); 957 957 jsTestInterface->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp
r181024 r181156 167 167 return throwThisTypeError(*exec, "TestMediaQueryListListener", "method"); 168 168 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestMediaQueryListListener::info()); 169 TestMediaQueryListListener& impl = castedThis->impl();169 auto& impl = castedThis->impl(); 170 170 if (UNLIKELY(exec->argumentCount() < 1)) 171 171 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 186 186 void JSTestMediaQueryListListenerOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 187 187 { 188 JSTestMediaQueryListListener* jsTestMediaQueryListListener = jsCast<JSTestMediaQueryListListener*>(handle.slot()->asCell());189 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);188 auto* jsTestMediaQueryListListener = jsCast<JSTestMediaQueryListListener*>(handle.slot()->asCell()); 189 auto& world = *static_cast<DOMWrapperWorld*>(context); 190 190 uncacheWrapper(world, &jsTestMediaQueryListListener->impl(), jsTestMediaQueryListListener); 191 191 jsTestMediaQueryListListener->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp
r181024 r181156 125 125 EncodedJSValue JSC_HOST_CALL JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor(ExecState* exec) 126 126 { 127 JSTestNamedConstructorNamedConstructor* castedThis = jsCast<JSTestNamedConstructorNamedConstructor*>(exec->callee());127 auto* castedThis = jsCast<JSTestNamedConstructorNamedConstructor*>(exec->callee()); 128 128 if (UNLIKELY(exec->argumentCount() < 1)) 129 129 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 231 231 bool JSTestNamedConstructorOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor) 232 232 { 233 JSTestNamedConstructor* jsTestNamedConstructor = jsCast<JSTestNamedConstructor*>(handle.slot()->asCell());233 auto* jsTestNamedConstructor = jsCast<JSTestNamedConstructor*>(handle.slot()->asCell()); 234 234 if (jsTestNamedConstructor->impl().hasPendingActivity()) 235 235 return true; … … 240 240 void JSTestNamedConstructorOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 241 241 { 242 JSTestNamedConstructor* jsTestNamedConstructor = jsCast<JSTestNamedConstructor*>(handle.slot()->asCell());243 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);242 auto* jsTestNamedConstructor = jsCast<JSTestNamedConstructor*>(handle.slot()->asCell()); 243 auto& world = *static_cast<DOMWrapperWorld*>(context); 244 244 uncacheWrapper(world, &jsTestNamedConstructor->impl(), jsTestNamedConstructor); 245 245 jsTestNamedConstructor->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp
r181024 r181156 87 87 EncodedJSValue JSC_HOST_CALL JSTestNodeConstructor::constructJSTestNode(ExecState* exec) 88 88 { 89 JSTestNodeConstructor* castedThis = jsCast<JSTestNodeConstructor*>(exec->callee());89 auto* castedThis = jsCast<JSTestNodeConstructor*>(exec->callee()); 90 90 RefPtr<TestNode> object = TestNode::create(); 91 91 return JSValue::encode(asObject(toJS(exec, castedThis->globalObject(), object.get()))); … … 160 160 void JSTestNode::visitChildren(JSCell* cell, SlotVisitor& visitor) 161 161 { 162 JSTestNode* thisObject = jsCast<JSTestNode*>(cell);162 auto* thisObject = jsCast<JSTestNode*>(cell); 163 163 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 164 164 Base::visitChildren(thisObject, visitor); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp
r181024 r181156 200 200 } 201 201 #endif 202 TestNondeterministic& impl = castedThis->impl();202 auto& impl = castedThis->impl(); 203 203 JSValue result = jsNumber(impl.nondeterministicReadonlyAttr()); 204 204 return JSValue::encode(result); … … 237 237 } 238 238 #endif 239 TestNondeterministic& impl = castedThis->impl();239 auto& impl = castedThis->impl(); 240 240 JSValue result = jsStringWithCache(exec, impl.nondeterministicWriteableAttr()); 241 241 return JSValue::encode(result); … … 274 274 } 275 275 #endif 276 TestNondeterministic& impl = castedThis->impl();276 auto& impl = castedThis->impl(); 277 277 JSValue result = jsStringWithCache(exec, impl.nondeterministicExceptionAttr()); 278 278 return JSValue::encode(result); … … 314 314 } 315 315 #endif 316 TestNondeterministic& impl = castedThis->impl();316 auto& impl = castedThis->impl(); 317 317 JSValue result = jsStringWithCache(exec, impl.nondeterministicGetterExceptionAttr(ec)); 318 318 setDOMException(exec, ec); … … 352 352 } 353 353 #endif 354 TestNondeterministic& impl = castedThis->impl();354 auto& impl = castedThis->impl(); 355 355 JSValue result = jsStringWithCache(exec, impl.nondeterministicSetterExceptionAttr()); 356 356 return JSValue::encode(result); … … 378 378 return; 379 379 } 380 TestNondeterministic& impl = castedThis->impl();380 auto& impl = castedThis->impl(); 381 381 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 382 382 if (UNLIKELY(exec->hadException())) … … 398 398 return; 399 399 } 400 TestNondeterministic& impl = castedThis->impl();400 auto& impl = castedThis->impl(); 401 401 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 402 402 if (UNLIKELY(exec->hadException())) … … 418 418 return; 419 419 } 420 TestNondeterministic& impl = castedThis->impl();420 auto& impl = castedThis->impl(); 421 421 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 422 422 if (UNLIKELY(exec->hadException())) … … 438 438 return; 439 439 } 440 TestNondeterministic& impl = castedThis->impl();440 auto& impl = castedThis->impl(); 441 441 ExceptionCode ec = 0; 442 442 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); … … 460 460 return throwThisTypeError(*exec, "TestNondeterministic", "nondeterministicZeroArgFunction"); 461 461 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestNondeterministic::info()); 462 TestNondeterministic& impl = castedThis->impl();462 auto& impl = castedThis->impl(); 463 463 JSValue result; 464 464 #if ENABLE(WEB_REPLAY) … … 493 493 void JSTestNondeterministicOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 494 494 { 495 JSTestNondeterministic* jsTestNondeterministic = jsCast<JSTestNondeterministic*>(handle.slot()->asCell());496 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);495 auto* jsTestNondeterministic = jsCast<JSTestNondeterministic*>(handle.slot()->asCell()); 496 auto& world = *static_cast<DOMWrapperWorld*>(context); 497 497 uncacheWrapper(world, &jsTestNondeterministic->impl(), jsTestNondeterministic); 498 498 jsTestNondeterministic->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp
r181024 r181156 443 443 EncodedJSValue JSC_HOST_CALL JSTestObjConstructor::constructJSTestObj(ExecState* exec) 444 444 { 445 JSTestObjConstructor* castedThis = jsCast<JSTestObjConstructor*>(exec->callee());445 auto* castedThis = jsCast<JSTestObjConstructor*>(exec->callee()); 446 446 if (UNLIKELY(exec->argumentCount() < 1)) 447 447 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 685 685 bool JSTestObj::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 686 686 { 687 JSTestObj* thisObject = jsCast<JSTestObj*>(object);687 auto* thisObject = jsCast<JSTestObj*>(object); 688 688 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 689 689 return getStaticValueSlot<JSTestObj, Base>(exec, JSTestObjTable, thisObject, propertyName, slot); … … 701 701 return throwGetterTypeError(*exec, "TestObj", "readOnlyLongAttr"); 702 702 } 703 TestObj& impl = castedThis->impl();703 auto& impl = castedThis->impl(); 704 704 JSValue result = jsNumber(impl.readOnlyLongAttr()); 705 705 return JSValue::encode(result); … … 718 718 return throwGetterTypeError(*exec, "TestObj", "readOnlyStringAttr"); 719 719 } 720 TestObj& impl = castedThis->impl();720 auto& impl = castedThis->impl(); 721 721 JSValue result = jsStringWithCache(exec, impl.readOnlyStringAttr()); 722 722 return JSValue::encode(result); … … 735 735 return throwGetterTypeError(*exec, "TestObj", "readOnlyTestObjAttr"); 736 736 } 737 TestObj& impl = castedThis->impl();737 auto& impl = castedThis->impl(); 738 738 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.readOnlyTestObjAttr())); 739 739 return JSValue::encode(result); … … 766 766 UNUSED_PARAM(slotBase); 767 767 UNUSED_PARAM(thisValue); 768 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);768 auto* castedThis = jsCast<JSTestObj*>(slotBase); 769 769 return JSValue::encode(JSTestSubObj::getConstructor(exec->vm(), castedThis->globalObject())); 770 770 } … … 776 776 UNUSED_PARAM(slotBase); 777 777 UNUSED_PARAM(thisValue); 778 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);778 auto* castedThis = jsCast<JSTestObj*>(slotBase); 779 779 if (!castedThis->impl().frame()) 780 780 return JSValue::encode(jsUndefined()); … … 797 797 return throwGetterTypeError(*exec, "TestObj", "enumAttr"); 798 798 } 799 TestObj& impl = castedThis->impl();799 auto& impl = castedThis->impl(); 800 800 JSValue result = jsStringWithCache(exec, impl.enumAttr()); 801 801 return JSValue::encode(result); … … 814 814 return throwGetterTypeError(*exec, "TestObj", "byteAttr"); 815 815 } 816 TestObj& impl = castedThis->impl();816 auto& impl = castedThis->impl(); 817 817 JSValue result = jsNumber(impl.byteAttr()); 818 818 return JSValue::encode(result); … … 831 831 return throwGetterTypeError(*exec, "TestObj", "octetAttr"); 832 832 } 833 TestObj& impl = castedThis->impl();833 auto& impl = castedThis->impl(); 834 834 JSValue result = jsNumber(impl.octetAttr()); 835 835 return JSValue::encode(result); … … 848 848 return throwGetterTypeError(*exec, "TestObj", "shortAttr"); 849 849 } 850 TestObj& impl = castedThis->impl();850 auto& impl = castedThis->impl(); 851 851 JSValue result = jsNumber(impl.shortAttr()); 852 852 return JSValue::encode(result); … … 865 865 return throwGetterTypeError(*exec, "TestObj", "unsignedShortAttr"); 866 866 } 867 TestObj& impl = castedThis->impl();867 auto& impl = castedThis->impl(); 868 868 JSValue result = jsNumber(impl.unsignedShortAttr()); 869 869 return JSValue::encode(result); … … 882 882 return throwGetterTypeError(*exec, "TestObj", "longAttr"); 883 883 } 884 TestObj& impl = castedThis->impl();884 auto& impl = castedThis->impl(); 885 885 JSValue result = jsNumber(impl.longAttr()); 886 886 return JSValue::encode(result); … … 899 899 return throwGetterTypeError(*exec, "TestObj", "longLongAttr"); 900 900 } 901 TestObj& impl = castedThis->impl();901 auto& impl = castedThis->impl(); 902 902 JSValue result = jsNumber(impl.longLongAttr()); 903 903 return JSValue::encode(result); … … 916 916 return throwGetterTypeError(*exec, "TestObj", "unsignedLongLongAttr"); 917 917 } 918 TestObj& impl = castedThis->impl();918 auto& impl = castedThis->impl(); 919 919 JSValue result = jsNumber(impl.unsignedLongLongAttr()); 920 920 return JSValue::encode(result); … … 933 933 return throwGetterTypeError(*exec, "TestObj", "stringAttr"); 934 934 } 935 TestObj& impl = castedThis->impl();935 auto& impl = castedThis->impl(); 936 936 JSValue result = jsStringWithCache(exec, impl.stringAttr()); 937 937 return JSValue::encode(result); … … 950 950 return throwGetterTypeError(*exec, "TestObj", "testObjAttr"); 951 951 } 952 TestObj& impl = castedThis->impl();952 auto& impl = castedThis->impl(); 953 953 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.testObjAttr())); 954 954 return JSValue::encode(result); … … 967 967 return throwGetterTypeError(*exec, "TestObj", "XMLObjAttr"); 968 968 } 969 TestObj& impl = castedThis->impl();969 auto& impl = castedThis->impl(); 970 970 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.xmlObjAttr())); 971 971 return JSValue::encode(result); … … 984 984 return throwGetterTypeError(*exec, "TestObj", "create"); 985 985 } 986 TestObj& impl = castedThis->impl();986 auto& impl = castedThis->impl(); 987 987 JSValue result = jsBoolean(impl.isCreate()); 988 988 return JSValue::encode(result); … … 1001 1001 return throwGetterTypeError(*exec, "TestObj", "reflectedStringAttr"); 1002 1002 } 1003 TestObj& impl = castedThis->impl();1003 auto& impl = castedThis->impl(); 1004 1004 JSValue result = jsStringWithCache(exec, impl.fastGetAttribute(WebCore::HTMLNames::reflectedstringattrAttr)); 1005 1005 return JSValue::encode(result); … … 1018 1018 return throwGetterTypeError(*exec, "TestObj", "reflectedIntegralAttr"); 1019 1019 } 1020 TestObj& impl = castedThis->impl();1020 auto& impl = castedThis->impl(); 1021 1021 JSValue result = jsNumber(impl.getIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr)); 1022 1022 return JSValue::encode(result); … … 1035 1035 return throwGetterTypeError(*exec, "TestObj", "reflectedUnsignedIntegralAttr"); 1036 1036 } 1037 TestObj& impl = castedThis->impl();1037 auto& impl = castedThis->impl(); 1038 1038 JSValue result = jsNumber(std::max(0, impl.getIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr))); 1039 1039 return JSValue::encode(result); … … 1052 1052 return throwGetterTypeError(*exec, "TestObj", "reflectedBooleanAttr"); 1053 1053 } 1054 TestObj& impl = castedThis->impl();1054 auto& impl = castedThis->impl(); 1055 1055 JSValue result = jsBoolean(impl.fastHasAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr)); 1056 1056 return JSValue::encode(result); … … 1069 1069 return throwGetterTypeError(*exec, "TestObj", "reflectedURLAttr"); 1070 1070 } 1071 TestObj& impl = castedThis->impl();1071 auto& impl = castedThis->impl(); 1072 1072 JSValue result = jsStringWithCache(exec, impl.getURLAttribute(WebCore::HTMLNames::reflectedurlattrAttr)); 1073 1073 return JSValue::encode(result); … … 1086 1086 return throwGetterTypeError(*exec, "TestObj", "reflectedStringAttr"); 1087 1087 } 1088 TestObj& impl = castedThis->impl();1088 auto& impl = castedThis->impl(); 1089 1089 JSValue result = jsStringWithCache(exec, impl.fastGetAttribute(WebCore::HTMLNames::customContentStringAttrAttr)); 1090 1090 return JSValue::encode(result); … … 1103 1103 return throwGetterTypeError(*exec, "TestObj", "reflectedCustomIntegralAttr"); 1104 1104 } 1105 TestObj& impl = castedThis->impl();1105 auto& impl = castedThis->impl(); 1106 1106 JSValue result = jsNumber(impl.getIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr)); 1107 1107 return JSValue::encode(result); … … 1120 1120 return throwGetterTypeError(*exec, "TestObj", "reflectedCustomBooleanAttr"); 1121 1121 } 1122 TestObj& impl = castedThis->impl();1122 auto& impl = castedThis->impl(); 1123 1123 JSValue result = jsBoolean(impl.fastHasAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr)); 1124 1124 return JSValue::encode(result); … … 1137 1137 return throwGetterTypeError(*exec, "TestObj", "reflectedCustomURLAttr"); 1138 1138 } 1139 TestObj& impl = castedThis->impl();1139 auto& impl = castedThis->impl(); 1140 1140 JSValue result = jsStringWithCache(exec, impl.getURLAttribute(WebCore::HTMLNames::customContentURLAttrAttr)); 1141 1141 return JSValue::encode(result); … … 1154 1154 return throwGetterTypeError(*exec, "TestObj", "typedArrayAttr"); 1155 1155 } 1156 TestObj& impl = castedThis->impl();1156 auto& impl = castedThis->impl(); 1157 1157 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.typedArrayAttr())); 1158 1158 return JSValue::encode(result); … … 1172 1172 } 1173 1173 ExceptionCode ec = 0; 1174 TestObj& impl = castedThis->impl();1174 auto& impl = castedThis->impl(); 1175 1175 JSValue result = jsNumber(impl.attrWithGetterException(ec)); 1176 1176 setDOMException(exec, ec); … … 1190 1190 return throwGetterTypeError(*exec, "TestObj", "attrWithSetterException"); 1191 1191 } 1192 TestObj& impl = castedThis->impl();1192 auto& impl = castedThis->impl(); 1193 1193 JSValue result = jsNumber(impl.attrWithSetterException()); 1194 1194 return JSValue::encode(result); … … 1208 1208 } 1209 1209 ExceptionCode ec = 0; 1210 TestObj& impl = castedThis->impl();1210 auto& impl = castedThis->impl(); 1211 1211 JSValue result = jsStringWithCache(exec, impl.stringAttrWithGetterException(ec)); 1212 1212 setDOMException(exec, ec); … … 1226 1226 return throwGetterTypeError(*exec, "TestObj", "stringAttrWithSetterException"); 1227 1227 } 1228 TestObj& impl = castedThis->impl();1228 auto& impl = castedThis->impl(); 1229 1229 JSValue result = jsStringWithCache(exec, impl.stringAttrWithSetterException()); 1230 1230 return JSValue::encode(result); … … 1237 1237 UNUSED_PARAM(slotBase); 1238 1238 UNUSED_PARAM(thisValue); 1239 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);1239 auto* castedThis = jsCast<JSTestObj*>(slotBase); 1240 1240 return JSValue::encode(castedThis->customAttr(exec)); 1241 1241 } … … 1253 1253 return throwGetterTypeError(*exec, "TestObj", "withScriptStateAttribute"); 1254 1254 } 1255 TestObj& impl = castedThis->impl();1255 auto& impl = castedThis->impl(); 1256 1256 JSValue result = jsNumber(impl.withScriptStateAttribute(exec)); 1257 1257 return JSValue::encode(result); … … 1270 1270 return throwGetterTypeError(*exec, "TestObj", "withScriptExecutionContextAttribute"); 1271 1271 } 1272 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();1272 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 1273 1273 if (!scriptContext) 1274 1274 return JSValue::encode(jsUndefined()); 1275 TestObj& impl = castedThis->impl();1275 auto& impl = castedThis->impl(); 1276 1276 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptExecutionContextAttribute(scriptContext))); 1277 1277 return JSValue::encode(result); … … 1291 1291 } 1292 1292 ExceptionCode ec = 0; 1293 TestObj& impl = castedThis->impl();1293 auto& impl = castedThis->impl(); 1294 1294 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptStateAttributeRaises(exec, ec))); 1295 1295 setDOMException(exec, ec); … … 1310 1310 } 1311 1311 ExceptionCode ec = 0; 1312 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();1312 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 1313 1313 if (!scriptContext) 1314 1314 return JSValue::encode(jsUndefined()); 1315 TestObj& impl = castedThis->impl();1315 auto& impl = castedThis->impl(); 1316 1316 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptExecutionContextAttributeRaises(scriptContext, ec))); 1317 1317 setDOMException(exec, ec); … … 1331 1331 return throwGetterTypeError(*exec, "TestObj", "withScriptExecutionContextAndScriptStateAttribute"); 1332 1332 } 1333 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();1333 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 1334 1334 if (!scriptContext) 1335 1335 return JSValue::encode(jsUndefined()); 1336 TestObj& impl = castedThis->impl();1336 auto& impl = castedThis->impl(); 1337 1337 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateAttribute(exec, scriptContext))); 1338 1338 return JSValue::encode(result); … … 1352 1352 } 1353 1353 ExceptionCode ec = 0; 1354 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();1354 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 1355 1355 if (!scriptContext) 1356 1356 return JSValue::encode(jsUndefined()); 1357 TestObj& impl = castedThis->impl();1357 auto& impl = castedThis->impl(); 1358 1358 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateAttributeRaises(exec, scriptContext, ec))); 1359 1359 setDOMException(exec, ec); … … 1373 1373 return throwGetterTypeError(*exec, "TestObj", "withScriptExecutionContextAndScriptStateWithSpacesAttribute"); 1374 1374 } 1375 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();1375 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 1376 1376 if (!scriptContext) 1377 1377 return JSValue::encode(jsUndefined()); 1378 TestObj& impl = castedThis->impl();1378 auto& impl = castedThis->impl(); 1379 1379 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateWithSpacesAttribute(exec, scriptContext))); 1380 1380 return JSValue::encode(result); … … 1393 1393 return throwGetterTypeError(*exec, "TestObj", "withScriptArgumentsAndCallStackAttribute"); 1394 1394 } 1395 TestObj& impl = castedThis->impl();1395 auto& impl = castedThis->impl(); 1396 1396 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptArgumentsAndCallStackAttribute())); 1397 1397 return JSValue::encode(result); … … 1411 1411 return throwGetterTypeError(*exec, "TestObj", "conditionalAttr1"); 1412 1412 } 1413 TestObj& impl = castedThis->impl();1413 auto& impl = castedThis->impl(); 1414 1414 JSValue result = jsNumber(impl.conditionalAttr1()); 1415 1415 return JSValue::encode(result); … … 1430 1430 return throwGetterTypeError(*exec, "TestObj", "conditionalAttr2"); 1431 1431 } 1432 TestObj& impl = castedThis->impl();1432 auto& impl = castedThis->impl(); 1433 1433 JSValue result = jsNumber(impl.conditionalAttr2()); 1434 1434 return JSValue::encode(result); … … 1449 1449 return throwGetterTypeError(*exec, "TestObj", "conditionalAttr3"); 1450 1450 } 1451 TestObj& impl = castedThis->impl();1451 auto& impl = castedThis->impl(); 1452 1452 JSValue result = jsNumber(impl.conditionalAttr3()); 1453 1453 return JSValue::encode(result); … … 1462 1462 UNUSED_PARAM(slotBase); 1463 1463 UNUSED_PARAM(thisValue); 1464 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);1464 auto* castedThis = jsCast<JSTestObj*>(slotBase); 1465 1465 return JSValue::encode(JSTestObjectA::getConstructor(exec->vm(), castedThis->globalObject())); 1466 1466 } … … 1474 1474 UNUSED_PARAM(slotBase); 1475 1475 UNUSED_PARAM(thisValue); 1476 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);1476 auto* castedThis = jsCast<JSTestObj*>(slotBase); 1477 1477 return JSValue::encode(JSTestObjectB::getConstructor(exec->vm(), castedThis->globalObject())); 1478 1478 } … … 1486 1486 UNUSED_PARAM(slotBase); 1487 1487 UNUSED_PARAM(thisValue); 1488 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);1488 auto* castedThis = jsCast<JSTestObj*>(slotBase); 1489 1489 return JSValue::encode(JSTestObjectC::getConstructor(exec->vm(), castedThis->globalObject())); 1490 1490 } … … 1505 1505 if (JSValue cachedValue = castedThis->m_cachedAttribute1.get()) 1506 1506 return JSValue::encode(cachedValue); 1507 TestObj& impl = castedThis->impl();1507 auto& impl = castedThis->impl(); 1508 1508 JSValue result = (impl.cachedAttribute1().hasNoValue() ? jsNull() : impl.cachedAttribute1().jsValue()); 1509 1509 castedThis->m_cachedAttribute1.set(exec->vm(), castedThis, result); … … 1525 1525 if (JSValue cachedValue = castedThis->m_cachedAttribute2.get()) 1526 1526 return JSValue::encode(cachedValue); 1527 TestObj& impl = castedThis->impl();1527 auto& impl = castedThis->impl(); 1528 1528 JSValue result = (impl.cachedAttribute2().hasNoValue() ? jsNull() : impl.cachedAttribute2().jsValue()); 1529 1529 castedThis->m_cachedAttribute2.set(exec->vm(), castedThis, result); … … 1543 1543 return throwGetterTypeError(*exec, "TestObj", "anyAttribute"); 1544 1544 } 1545 TestObj& impl = castedThis->impl();1545 auto& impl = castedThis->impl(); 1546 1546 JSValue result = (impl.anyAttribute().hasNoValue() ? jsNull() : impl.anyAttribute().jsValue()); 1547 1547 return JSValue::encode(result); … … 1554 1554 UNUSED_PARAM(slotBase); 1555 1555 UNUSED_PARAM(thisValue); 1556 JSTestObj* castedThis = jsCast<JSTestObj*>(slotBase);1557 TestObj& impl = castedThis->impl();1556 auto* castedThis = jsCast<JSTestObj*>(slotBase); 1557 auto& impl = castedThis->impl(); 1558 1558 return JSValue::encode(shouldAllowAccessToNode(exec, impl.contentDocument()) ? toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.contentDocument())) : jsNull()); 1559 1559 } … … 1571 1571 return throwGetterTypeError(*exec, "TestObj", "mutablePoint"); 1572 1572 } 1573 TestObj& impl = castedThis->impl();1573 auto& impl = castedThis->impl(); 1574 1574 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(SVGStaticPropertyTearOff<TestObj, SVGPoint>::create(impl, impl.mutablePoint(), &TestObj::updateMutablePoint))); 1575 1575 return JSValue::encode(result); … … 1588 1588 return throwGetterTypeError(*exec, "TestObj", "immutablePoint"); 1589 1589 } 1590 TestObj& impl = castedThis->impl();1590 auto& impl = castedThis->impl(); 1591 1591 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(SVGPropertyTearOff<SVGPoint>::create(impl.immutablePoint()))); 1592 1592 return JSValue::encode(result); … … 1605 1605 return throwGetterTypeError(*exec, "TestObj", "strawberry"); 1606 1606 } 1607 TestObj& impl = castedThis->impl();1607 auto& impl = castedThis->impl(); 1608 1608 JSValue result = jsNumber(impl.blueberry()); 1609 1609 return JSValue::encode(result); … … 1622 1622 return throwGetterTypeError(*exec, "TestObj", "strictFloat"); 1623 1623 } 1624 TestObj& impl = castedThis->impl();1624 auto& impl = castedThis->impl(); 1625 1625 JSValue result = jsNumber(impl.strictFloat()); 1626 1626 return JSValue::encode(result); … … 1639 1639 return throwGetterTypeError(*exec, "TestObj", "description"); 1640 1640 } 1641 TestObj& impl = castedThis->impl();1641 auto& impl = castedThis->impl(); 1642 1642 JSValue result = jsNumber(impl.description()); 1643 1643 return JSValue::encode(result); … … 1656 1656 return throwGetterTypeError(*exec, "TestObj", "id"); 1657 1657 } 1658 TestObj& impl = castedThis->impl();1658 auto& impl = castedThis->impl(); 1659 1659 JSValue result = jsNumber(impl.id()); 1660 1660 return JSValue::encode(result); … … 1673 1673 return throwGetterTypeError(*exec, "TestObj", "hash"); 1674 1674 } 1675 TestObj& impl = castedThis->impl();1675 auto& impl = castedThis->impl(); 1676 1676 JSValue result = jsStringWithCache(exec, impl.hash()); 1677 1677 return JSValue::encode(result); … … 1690 1690 return throwGetterTypeError(*exec, "TestObj", "replaceableAttribute"); 1691 1691 } 1692 TestObj& impl = castedThis->impl();1692 auto& impl = castedThis->impl(); 1693 1693 JSValue result = jsNumber(impl.replaceableAttribute()); 1694 1694 return JSValue::encode(result); … … 1708 1708 } 1709 1709 bool isNull = false; 1710 TestObj& impl = castedThis->impl();1710 auto& impl = castedThis->impl(); 1711 1711 JSValue result = jsNumber(impl.nullableDoubleAttribute(isNull)); 1712 1712 if (isNull) … … 1728 1728 } 1729 1729 bool isNull = false; 1730 TestObj& impl = castedThis->impl();1730 auto& impl = castedThis->impl(); 1731 1731 JSValue result = jsNumber(impl.nullableLongAttribute(isNull)); 1732 1732 if (isNull) … … 1748 1748 } 1749 1749 bool isNull = false; 1750 TestObj& impl = castedThis->impl();1750 auto& impl = castedThis->impl(); 1751 1751 JSValue result = jsBoolean(impl.nullableBooleanAttribute(isNull)); 1752 1752 if (isNull) … … 1768 1768 } 1769 1769 bool isNull = false; 1770 TestObj& impl = castedThis->impl();1770 auto& impl = castedThis->impl(); 1771 1771 JSValue result = jsStringWithCache(exec, impl.nullableStringAttribute(isNull)); 1772 1772 if (isNull) … … 1788 1788 } 1789 1789 bool isNull = false; 1790 TestObj& impl = castedThis->impl();1790 auto& impl = castedThis->impl(); 1791 1791 JSValue result = jsNumber(impl.nullableLongSettableAttribute(isNull)); 1792 1792 if (isNull) … … 1809 1809 ExceptionCode ec = 0; 1810 1810 bool isNull = false; 1811 TestObj& impl = castedThis->impl();1811 auto& impl = castedThis->impl(); 1812 1812 JSValue result = jsNumber(impl.nullableStringValue(isNull, ec)); 1813 1813 setDOMException(exec, ec); … … 1829 1829 return throwGetterTypeError(*exec, "TestObj", "attribute"); 1830 1830 } 1831 TestObj& impl = castedThis->impl();1831 auto& impl = castedThis->impl(); 1832 1832 JSValue result = jsStringWithCache(exec, impl.attribute()); 1833 1833 return JSValue::encode(result); … … 1846 1846 return throwGetterTypeError(*exec, "TestObj", "attributeWithReservedEnumType"); 1847 1847 } 1848 TestObj& impl = castedThis->impl();1848 auto& impl = castedThis->impl(); 1849 1849 JSValue result = jsStringWithCache(exec, impl.attributeWithReservedEnumType()); 1850 1850 return JSValue::encode(result); … … 1876 1876 UNUSED_PARAM(baseObject); 1877 1877 UNUSED_PARAM(thisValue); 1878 JSTestObj* castedThis = jsCast<JSTestObj*>(baseObject);1879 UNUSED_PARAM(thisValue); 1880 UNUSED_PARAM(exec); 1881 // Shadowing a built-in constructor 1878 auto* castedThis = jsCast<JSTestObj*>(baseObject); 1879 UNUSED_PARAM(thisValue); 1880 UNUSED_PARAM(exec); 1881 // Shadowing a built-in constructor. 1882 1882 castedThis->putDirect(exec->vm(), Identifier(exec, "TestSubObjEnabledBySetting"), value); 1883 1883 } … … 1896 1896 return; 1897 1897 } 1898 TestObj& impl = castedThis->impl();1898 auto& impl = castedThis->impl(); 1899 1899 const String nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 1900 1900 if (UNLIKELY(exec->hadException())) … … 1918 1918 return; 1919 1919 } 1920 TestObj& impl = castedThis->impl();1920 auto& impl = castedThis->impl(); 1921 1921 int8_t nativeValue(toInt8(exec, value, NormalConversion)); 1922 1922 if (UNLIKELY(exec->hadException())) … … 1938 1938 return; 1939 1939 } 1940 TestObj& impl = castedThis->impl();1940 auto& impl = castedThis->impl(); 1941 1941 uint8_t nativeValue(toUInt8(exec, value, NormalConversion)); 1942 1942 if (UNLIKELY(exec->hadException())) … … 1958 1958 return; 1959 1959 } 1960 TestObj& impl = castedThis->impl();1960 auto& impl = castedThis->impl(); 1961 1961 int16_t nativeValue(toInt16(exec, value, NormalConversion)); 1962 1962 if (UNLIKELY(exec->hadException())) … … 1978 1978 return; 1979 1979 } 1980 TestObj& impl = castedThis->impl();1980 auto& impl = castedThis->impl(); 1981 1981 uint16_t nativeValue(toUInt16(exec, value, NormalConversion)); 1982 1982 if (UNLIKELY(exec->hadException())) … … 1998 1998 return; 1999 1999 } 2000 TestObj& impl = castedThis->impl();2000 auto& impl = castedThis->impl(); 2001 2001 int nativeValue(toInt32(exec, value, NormalConversion)); 2002 2002 if (UNLIKELY(exec->hadException())) … … 2018 2018 return; 2019 2019 } 2020 TestObj& impl = castedThis->impl();2020 auto& impl = castedThis->impl(); 2021 2021 long long nativeValue(toInt64(exec, value, NormalConversion)); 2022 2022 if (UNLIKELY(exec->hadException())) … … 2038 2038 return; 2039 2039 } 2040 TestObj& impl = castedThis->impl();2040 auto& impl = castedThis->impl(); 2041 2041 unsigned long long nativeValue(toUInt64(exec, value, NormalConversion)); 2042 2042 if (UNLIKELY(exec->hadException())) … … 2058 2058 return; 2059 2059 } 2060 TestObj& impl = castedThis->impl();2060 auto& impl = castedThis->impl(); 2061 2061 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 2062 2062 if (UNLIKELY(exec->hadException())) … … 2078 2078 return; 2079 2079 } 2080 TestObj& impl = castedThis->impl();2080 auto& impl = castedThis->impl(); 2081 2081 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2082 2082 if (UNLIKELY(exec->hadException())) … … 2098 2098 return; 2099 2099 } 2100 TestObj& impl = castedThis->impl();2100 auto& impl = castedThis->impl(); 2101 2101 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2102 2102 if (UNLIKELY(exec->hadException())) … … 2118 2118 return; 2119 2119 } 2120 TestObj& impl = castedThis->impl();2120 auto& impl = castedThis->impl(); 2121 2121 bool nativeValue(value.toBoolean(exec)); 2122 2122 if (UNLIKELY(exec->hadException())) … … 2138 2138 return; 2139 2139 } 2140 TestObj& impl = castedThis->impl();2140 auto& impl = castedThis->impl(); 2141 2141 const String& nativeValue(valueToStringWithNullCheck(exec, value)); 2142 2142 if (UNLIKELY(exec->hadException())) … … 2158 2158 return; 2159 2159 } 2160 TestObj& impl = castedThis->impl();2160 auto& impl = castedThis->impl(); 2161 2161 int nativeValue(toInt32(exec, value, NormalConversion)); 2162 2162 if (UNLIKELY(exec->hadException())) … … 2178 2178 return; 2179 2179 } 2180 TestObj& impl = castedThis->impl();2180 auto& impl = castedThis->impl(); 2181 2181 unsigned nativeValue(toUInt32(exec, value, NormalConversion)); 2182 2182 if (UNLIKELY(exec->hadException())) … … 2198 2198 return; 2199 2199 } 2200 TestObj& impl = castedThis->impl();2200 auto& impl = castedThis->impl(); 2201 2201 bool nativeValue(value.toBoolean(exec)); 2202 2202 if (UNLIKELY(exec->hadException())) … … 2218 2218 return; 2219 2219 } 2220 TestObj& impl = castedThis->impl();2220 auto& impl = castedThis->impl(); 2221 2221 const String& nativeValue(valueToStringWithNullCheck(exec, value)); 2222 2222 if (UNLIKELY(exec->hadException())) … … 2238 2238 return; 2239 2239 } 2240 TestObj& impl = castedThis->impl();2240 auto& impl = castedThis->impl(); 2241 2241 const String& nativeValue(valueToStringWithNullCheck(exec, value)); 2242 2242 if (UNLIKELY(exec->hadException())) … … 2258 2258 return; 2259 2259 } 2260 TestObj& impl = castedThis->impl();2260 auto& impl = castedThis->impl(); 2261 2261 int nativeValue(toInt32(exec, value, NormalConversion)); 2262 2262 if (UNLIKELY(exec->hadException())) … … 2278 2278 return; 2279 2279 } 2280 TestObj& impl = castedThis->impl();2280 auto& impl = castedThis->impl(); 2281 2281 bool nativeValue(value.toBoolean(exec)); 2282 2282 if (UNLIKELY(exec->hadException())) … … 2298 2298 return; 2299 2299 } 2300 TestObj& impl = castedThis->impl();2300 auto& impl = castedThis->impl(); 2301 2301 const String& nativeValue(valueToStringWithNullCheck(exec, value)); 2302 2302 if (UNLIKELY(exec->hadException())) … … 2318 2318 return; 2319 2319 } 2320 TestObj& impl = castedThis->impl();2320 auto& impl = castedThis->impl(); 2321 2321 RefPtr<Float32Array> nativeValue(toFloat32Array(value)); 2322 2322 if (UNLIKELY(exec->hadException())) … … 2338 2338 return; 2339 2339 } 2340 TestObj& impl = castedThis->impl();2340 auto& impl = castedThis->impl(); 2341 2341 int nativeValue(toInt32(exec, value, NormalConversion)); 2342 2342 if (UNLIKELY(exec->hadException())) … … 2358 2358 return; 2359 2359 } 2360 TestObj& impl = castedThis->impl();2360 auto& impl = castedThis->impl(); 2361 2361 ExceptionCode ec = 0; 2362 2362 int nativeValue(toInt32(exec, value, NormalConversion)); … … 2380 2380 return; 2381 2381 } 2382 TestObj& impl = castedThis->impl();2382 auto& impl = castedThis->impl(); 2383 2383 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 2384 2384 if (UNLIKELY(exec->hadException())) … … 2400 2400 return; 2401 2401 } 2402 TestObj& impl = castedThis->impl();2402 auto& impl = castedThis->impl(); 2403 2403 ExceptionCode ec = 0; 2404 2404 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); … … 2415 2415 UNUSED_PARAM(baseObject); 2416 2416 UNUSED_PARAM(thisValue); 2417 JSTestObj* castedThis = jsCast<JSTestObj*>(baseObject);2417 auto* castedThis = jsCast<JSTestObj*>(baseObject); 2418 2418 UNUSED_PARAM(thisValue); 2419 2419 UNUSED_PARAM(exec); … … 2434 2434 return; 2435 2435 } 2436 TestObj& impl = castedThis->impl();2436 auto& impl = castedThis->impl(); 2437 2437 int nativeValue(toInt32(exec, value, NormalConversion)); 2438 2438 if (UNLIKELY(exec->hadException())) … … 2454 2454 return; 2455 2455 } 2456 TestObj& impl = castedThis->impl();2456 auto& impl = castedThis->impl(); 2457 2457 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2458 2458 if (UNLIKELY(exec->hadException())) 2459 2459 return; 2460 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();2460 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 2461 2461 if (!scriptContext) 2462 2462 return; … … 2477 2477 return; 2478 2478 } 2479 TestObj& impl = castedThis->impl();2479 auto& impl = castedThis->impl(); 2480 2480 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2481 2481 if (UNLIKELY(exec->hadException())) … … 2497 2497 return; 2498 2498 } 2499 TestObj& impl = castedThis->impl();2499 auto& impl = castedThis->impl(); 2500 2500 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2501 2501 if (UNLIKELY(exec->hadException())) 2502 2502 return; 2503 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();2503 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 2504 2504 if (!scriptContext) 2505 2505 return; … … 2520 2520 return; 2521 2521 } 2522 TestObj& impl = castedThis->impl();2522 auto& impl = castedThis->impl(); 2523 2523 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2524 2524 if (UNLIKELY(exec->hadException())) 2525 2525 return; 2526 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();2526 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 2527 2527 if (!scriptContext) 2528 2528 return; … … 2543 2543 return; 2544 2544 } 2545 TestObj& impl = castedThis->impl();2545 auto& impl = castedThis->impl(); 2546 2546 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2547 2547 if (UNLIKELY(exec->hadException())) 2548 2548 return; 2549 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();2549 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 2550 2550 if (!scriptContext) 2551 2551 return; … … 2566 2566 return; 2567 2567 } 2568 TestObj& impl = castedThis->impl();2568 auto& impl = castedThis->impl(); 2569 2569 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2570 2570 if (UNLIKELY(exec->hadException())) 2571 2571 return; 2572 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();2572 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 2573 2573 if (!scriptContext) 2574 2574 return; … … 2589 2589 return; 2590 2590 } 2591 TestObj& impl = castedThis->impl();2591 auto& impl = castedThis->impl(); 2592 2592 TestObj* nativeValue(JSTestObj::toWrapped(value)); 2593 2593 if (UNLIKELY(exec->hadException())) … … 2610 2610 return; 2611 2611 } 2612 TestObj& impl = castedThis->impl();2612 auto& impl = castedThis->impl(); 2613 2613 int nativeValue(toInt32(exec, value, NormalConversion)); 2614 2614 if (UNLIKELY(exec->hadException())) … … 2632 2632 return; 2633 2633 } 2634 TestObj& impl = castedThis->impl();2634 auto& impl = castedThis->impl(); 2635 2635 int nativeValue(toInt32(exec, value, NormalConversion)); 2636 2636 if (UNLIKELY(exec->hadException())) … … 2654 2654 return; 2655 2655 } 2656 TestObj& impl = castedThis->impl();2656 auto& impl = castedThis->impl(); 2657 2657 int nativeValue(toInt32(exec, value, NormalConversion)); 2658 2658 if (UNLIKELY(exec->hadException())) … … 2669 2669 UNUSED_PARAM(baseObject); 2670 2670 UNUSED_PARAM(thisValue); 2671 JSTestObj* castedThis = jsCast<JSTestObj*>(baseObject);2672 UNUSED_PARAM(thisValue); 2673 UNUSED_PARAM(exec); 2674 // Shadowing a built-in constructor 2671 auto* castedThis = jsCast<JSTestObj*>(baseObject); 2672 UNUSED_PARAM(thisValue); 2673 UNUSED_PARAM(exec); 2674 // Shadowing a built-in constructor. 2675 2675 castedThis->putDirect(exec->vm(), Identifier(exec, "conditionalAttr4"), value); 2676 2676 } … … 2684 2684 UNUSED_PARAM(baseObject); 2685 2685 UNUSED_PARAM(thisValue); 2686 JSTestObj* castedThis = jsCast<JSTestObj*>(baseObject);2687 UNUSED_PARAM(thisValue); 2688 UNUSED_PARAM(exec); 2689 // Shadowing a built-in constructor 2686 auto* castedThis = jsCast<JSTestObj*>(baseObject); 2687 UNUSED_PARAM(thisValue); 2688 UNUSED_PARAM(exec); 2689 // Shadowing a built-in constructor. 2690 2690 castedThis->putDirect(exec->vm(), Identifier(exec, "conditionalAttr5"), value); 2691 2691 } … … 2699 2699 UNUSED_PARAM(baseObject); 2700 2700 UNUSED_PARAM(thisValue); 2701 JSTestObj* castedThis = jsCast<JSTestObj*>(baseObject);2702 UNUSED_PARAM(thisValue); 2703 UNUSED_PARAM(exec); 2704 // Shadowing a built-in constructor 2701 auto* castedThis = jsCast<JSTestObj*>(baseObject); 2702 UNUSED_PARAM(thisValue); 2703 UNUSED_PARAM(exec); 2704 // Shadowing a built-in constructor. 2705 2705 castedThis->putDirect(exec->vm(), Identifier(exec, "conditionalAttr6"), value); 2706 2706 } … … 2720 2720 return; 2721 2721 } 2722 TestObj& impl = castedThis->impl();2722 auto& impl = castedThis->impl(); 2723 2723 Deprecated::ScriptValue nativeValue(exec->vm(), value); 2724 2724 if (UNLIKELY(exec->hadException())) … … 2740 2740 return; 2741 2741 } 2742 TestObj& impl = castedThis->impl();2742 auto& impl = castedThis->impl(); 2743 2743 SVGPropertyTearOff<SVGPoint>* nativeValue(JSSVGPoint::toWrapped(value)); 2744 2744 if (UNLIKELY(exec->hadException())) … … 2760 2760 return; 2761 2761 } 2762 TestObj& impl = castedThis->impl();2762 auto& impl = castedThis->impl(); 2763 2763 SVGPropertyTearOff<SVGPoint>* nativeValue(JSSVGPoint::toWrapped(value)); 2764 2764 if (UNLIKELY(exec->hadException())) … … 2780 2780 return; 2781 2781 } 2782 TestObj& impl = castedThis->impl();2782 auto& impl = castedThis->impl(); 2783 2783 int nativeValue(toInt32(exec, value, NormalConversion)); 2784 2784 if (UNLIKELY(exec->hadException())) … … 2800 2800 return; 2801 2801 } 2802 TestObj& impl = castedThis->impl();2802 auto& impl = castedThis->impl(); 2803 2803 float nativeValue(value.toFloat(exec)); 2804 2804 if (UNLIKELY(exec->hadException())) … … 2820 2820 return; 2821 2821 } 2822 TestObj& impl = castedThis->impl();2822 auto& impl = castedThis->impl(); 2823 2823 int nativeValue(toInt32(exec, value, NormalConversion)); 2824 2824 if (UNLIKELY(exec->hadException())) … … 2840 2840 return; 2841 2841 } 2842 // Shadowing a built-in object 2842 // Shadowing a built-in object. 2843 2843 castedThis->putDirect(exec->vm(), Identifier(exec, "replaceableAttribute"), value); 2844 2844 } … … 2857 2857 return; 2858 2858 } 2859 TestObj& impl = castedThis->impl();2859 auto& impl = castedThis->impl(); 2860 2860 int nativeValue(toInt32(exec, value, NormalConversion)); 2861 2861 if (UNLIKELY(exec->hadException())) … … 2877 2877 return; 2878 2878 } 2879 TestObj& impl = castedThis->impl();2879 auto& impl = castedThis->impl(); 2880 2880 int nativeValue(toInt32(exec, value, NormalConversion)); 2881 2881 if (UNLIKELY(exec->hadException())) … … 2897 2897 return; 2898 2898 } 2899 TestObj& impl = castedThis->impl();2899 auto& impl = castedThis->impl(); 2900 2900 const String nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 2901 2901 if (UNLIKELY(exec->hadException())) … … 2919 2919 return throwThisTypeError(*exec, "TestObj", "voidMethod"); 2920 2920 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 2921 TestObj& impl = castedThis->impl();2921 auto& impl = castedThis->impl(); 2922 2922 impl.voidMethod(); 2923 2923 return JSValue::encode(jsUndefined()); … … 2931 2931 return throwThisTypeError(*exec, "TestObj", "voidMethodWithArgs"); 2932 2932 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 2933 TestObj& impl = castedThis->impl();2933 auto& impl = castedThis->impl(); 2934 2934 if (UNLIKELY(exec->argumentCount() < 3)) 2935 2935 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 2954 2954 return throwThisTypeError(*exec, "TestObj", "byteMethod"); 2955 2955 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 2956 TestObj& impl = castedThis->impl();2956 auto& impl = castedThis->impl(); 2957 2957 JSValue result = jsNumber(impl.byteMethod()); 2958 2958 return JSValue::encode(result); … … 2966 2966 return throwThisTypeError(*exec, "TestObj", "byteMethodWithArgs"); 2967 2967 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 2968 TestObj& impl = castedThis->impl();2968 auto& impl = castedThis->impl(); 2969 2969 if (UNLIKELY(exec->argumentCount() < 3)) 2970 2970 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 2989 2989 return throwThisTypeError(*exec, "TestObj", "octetMethod"); 2990 2990 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 2991 TestObj& impl = castedThis->impl();2991 auto& impl = castedThis->impl(); 2992 2992 JSValue result = jsNumber(impl.octetMethod()); 2993 2993 return JSValue::encode(result); … … 3001 3001 return throwThisTypeError(*exec, "TestObj", "octetMethodWithArgs"); 3002 3002 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3003 TestObj& impl = castedThis->impl();3003 auto& impl = castedThis->impl(); 3004 3004 if (UNLIKELY(exec->argumentCount() < 3)) 3005 3005 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3024 3024 return throwThisTypeError(*exec, "TestObj", "longMethod"); 3025 3025 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3026 TestObj& impl = castedThis->impl();3026 auto& impl = castedThis->impl(); 3027 3027 JSValue result = jsNumber(impl.longMethod()); 3028 3028 return JSValue::encode(result); … … 3036 3036 return throwThisTypeError(*exec, "TestObj", "longMethodWithArgs"); 3037 3037 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3038 TestObj& impl = castedThis->impl();3038 auto& impl = castedThis->impl(); 3039 3039 if (UNLIKELY(exec->argumentCount() < 3)) 3040 3040 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3059 3059 return throwThisTypeError(*exec, "TestObj", "objMethod"); 3060 3060 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3061 TestObj& impl = castedThis->impl();3061 auto& impl = castedThis->impl(); 3062 3062 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.objMethod())); 3063 3063 return JSValue::encode(result); … … 3071 3071 return throwThisTypeError(*exec, "TestObj", "objMethodWithArgs"); 3072 3072 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3073 TestObj& impl = castedThis->impl();3073 auto& impl = castedThis->impl(); 3074 3074 if (UNLIKELY(exec->argumentCount() < 3)) 3075 3075 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3094 3094 return throwThisTypeError(*exec, "TestObj", "methodWithSequenceArg"); 3095 3095 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3096 TestObj& impl = castedThis->impl();3096 auto& impl = castedThis->impl(); 3097 3097 if (UNLIKELY(exec->argumentCount() < 1)) 3098 3098 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3111 3111 return throwThisTypeError(*exec, "TestObj", "methodReturningSequence"); 3112 3112 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3113 TestObj& impl = castedThis->impl();3113 auto& impl = castedThis->impl(); 3114 3114 if (UNLIKELY(exec->argumentCount() < 1)) 3115 3115 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3128 3128 return throwThisTypeError(*exec, "TestObj", "methodWithEnumArg"); 3129 3129 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3130 TestObj& impl = castedThis->impl();3130 auto& impl = castedThis->impl(); 3131 3131 if (UNLIKELY(exec->argumentCount() < 1)) 3132 3132 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3147 3147 return throwThisTypeError(*exec, "TestObj", "methodThatRequiresAllArgsAndThrows"); 3148 3148 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3149 TestObj& impl = castedThis->impl();3149 auto& impl = castedThis->impl(); 3150 3150 if (UNLIKELY(exec->argumentCount() < 2)) 3151 3151 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3170 3170 return throwThisTypeError(*exec, "TestObj", "serializedValue"); 3171 3171 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3172 TestObj& impl = castedThis->impl();3172 auto& impl = castedThis->impl(); 3173 3173 if (UNLIKELY(exec->argumentCount() < 1)) 3174 3174 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3187 3187 return throwThisTypeError(*exec, "TestObj", "optionsObject"); 3188 3188 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3189 TestObj& impl = castedThis->impl();3189 auto& impl = castedThis->impl(); 3190 3190 if (UNLIKELY(exec->argumentCount() < 1)) 3191 3191 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3207 3207 return throwThisTypeError(*exec, "TestObj", "methodWithException"); 3208 3208 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3209 TestObj& impl = castedThis->impl();3209 auto& impl = castedThis->impl(); 3210 3210 ExceptionCode ec = 0; 3211 3211 impl.methodWithException(ec); … … 3241 3241 return throwThisTypeError(*exec, "TestObj", "addEventListener"); 3242 3242 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3243 TestObj& impl = castedThis->impl();3243 auto& impl = castedThis->impl(); 3244 3244 JSValue listener = exec->argument(1); 3245 3245 if (UNLIKELY(!listener.isObject())) … … 3256 3256 return throwThisTypeError(*exec, "TestObj", "removeEventListener"); 3257 3257 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3258 TestObj& impl = castedThis->impl();3258 auto& impl = castedThis->impl(); 3259 3259 JSValue listener = exec->argument(1); 3260 3260 if (UNLIKELY(!listener.isObject())) … … 3271 3271 return throwThisTypeError(*exec, "TestObj", "withScriptStateVoid"); 3272 3272 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3273 TestObj& impl = castedThis->impl();3273 auto& impl = castedThis->impl(); 3274 3274 impl.withScriptStateVoid(exec); 3275 3275 return JSValue::encode(jsUndefined()); … … 3283 3283 return throwThisTypeError(*exec, "TestObj", "withScriptStateObj"); 3284 3284 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3285 TestObj& impl = castedThis->impl();3285 auto& impl = castedThis->impl(); 3286 3286 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptStateObj(exec))); 3287 3287 if (UNLIKELY(exec->hadException())) … … 3297 3297 return throwThisTypeError(*exec, "TestObj", "withScriptStateVoidException"); 3298 3298 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3299 TestObj& impl = castedThis->impl();3299 auto& impl = castedThis->impl(); 3300 3300 ExceptionCode ec = 0; 3301 3301 impl.withScriptStateVoidException(exec, ec); … … 3311 3311 return throwThisTypeError(*exec, "TestObj", "withScriptStateObjException"); 3312 3312 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3313 TestObj& impl = castedThis->impl();3313 auto& impl = castedThis->impl(); 3314 3314 ExceptionCode ec = 0; 3315 3315 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(impl.withScriptStateObjException(exec, ec))); … … 3328 3328 return throwThisTypeError(*exec, "TestObj", "withScriptExecutionContext"); 3329 3329 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3330 TestObj& impl = castedThis->impl();3331 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();3330 auto& impl = castedThis->impl(); 3331 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 3332 3332 if (!scriptContext) 3333 3333 return JSValue::encode(jsUndefined()); … … 3343 3343 return throwThisTypeError(*exec, "TestObj", "withScriptExecutionContextAndScriptState"); 3344 3344 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3345 TestObj& impl = castedThis->impl();3346 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();3345 auto& impl = castedThis->impl(); 3346 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 3347 3347 if (!scriptContext) 3348 3348 return JSValue::encode(jsUndefined()); … … 3358 3358 return throwThisTypeError(*exec, "TestObj", "withScriptExecutionContextAndScriptStateObjException"); 3359 3359 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3360 TestObj& impl = castedThis->impl();3360 auto& impl = castedThis->impl(); 3361 3361 ExceptionCode ec = 0; 3362 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();3362 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 3363 3363 if (!scriptContext) 3364 3364 return JSValue::encode(jsUndefined()); … … 3378 3378 return throwThisTypeError(*exec, "TestObj", "withScriptExecutionContextAndScriptStateWithSpaces"); 3379 3379 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3380 TestObj& impl = castedThis->impl();3381 ScriptExecutionContext* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext();3380 auto& impl = castedThis->impl(); 3381 auto* scriptContext = jsCast<JSDOMGlobalObject*>(exec->lexicalGlobalObject())->scriptExecutionContext(); 3382 3382 if (!scriptContext) 3383 3383 return JSValue::encode(jsUndefined()); … … 3395 3395 return throwThisTypeError(*exec, "TestObj", "withScriptArgumentsAndCallStack"); 3396 3396 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3397 TestObj& impl = castedThis->impl();3397 auto& impl = castedThis->impl(); 3398 3398 RefPtr<Inspector::ScriptArguments> scriptArguments(Inspector::createScriptArguments(exec, 0)); 3399 3399 impl.withScriptArgumentsAndCallStack(scriptArguments.release()); … … 3408 3408 return throwThisTypeError(*exec, "TestObj", "methodWithOptionalArg"); 3409 3409 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3410 TestObj& impl = castedThis->impl();3410 auto& impl = castedThis->impl(); 3411 3411 3412 3412 size_t argsCount = exec->argumentCount(); … … 3430 3430 return throwThisTypeError(*exec, "TestObj", "methodWithNonOptionalArgAndOptionalArg"); 3431 3431 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3432 TestObj& impl = castedThis->impl();3432 auto& impl = castedThis->impl(); 3433 3433 if (UNLIKELY(exec->argumentCount() < 1)) 3434 3434 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3457 3457 return throwThisTypeError(*exec, "TestObj", "methodWithNonOptionalArgAndTwoOptionalArgs"); 3458 3458 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3459 TestObj& impl = castedThis->impl();3459 auto& impl = castedThis->impl(); 3460 3460 if (UNLIKELY(exec->argumentCount() < 1)) 3461 3461 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3492 3492 return throwThisTypeError(*exec, "TestObj", "methodWithOptionalString"); 3493 3493 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3494 TestObj& impl = castedThis->impl();3494 auto& impl = castedThis->impl(); 3495 3495 3496 3496 size_t argsCount = exec->argumentCount(); … … 3514 3514 return throwThisTypeError(*exec, "TestObj", "methodWithOptionalStringIsUndefined"); 3515 3515 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3516 TestObj& impl = castedThis->impl();3516 auto& impl = castedThis->impl(); 3517 3517 const String& str(exec->argument(0).isEmpty() ? String() : exec->argument(0).toString(exec)->value(exec)); 3518 3518 if (UNLIKELY(exec->hadException())) … … 3529 3529 return throwThisTypeError(*exec, "TestObj", "methodWithOptionalStringIsNullString"); 3530 3530 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3531 TestObj& impl = castedThis->impl();3531 auto& impl = castedThis->impl(); 3532 3532 const String& str(argumentOrNull(exec, 0).isEmpty() ? String() : argumentOrNull(exec, 0).toString(exec)->value(exec)); 3533 3533 if (UNLIKELY(exec->hadException())) … … 3544 3544 return throwThisTypeError(*exec, "TestObj", "methodWithCallbackArg"); 3545 3545 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3546 TestObj& impl = castedThis->impl();3546 auto& impl = castedThis->impl(); 3547 3547 if (UNLIKELY(exec->argumentCount() < 1)) 3548 3548 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3561 3561 return throwThisTypeError(*exec, "TestObj", "methodWithNonCallbackArgAndCallbackArg"); 3562 3562 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3563 TestObj& impl = castedThis->impl();3563 auto& impl = castedThis->impl(); 3564 3564 if (UNLIKELY(exec->argumentCount() < 2)) 3565 3565 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3581 3581 return throwThisTypeError(*exec, "TestObj", "methodWithCallbackAndOptionalArg"); 3582 3582 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3583 TestObj& impl = castedThis->impl();3583 auto& impl = castedThis->impl(); 3584 3584 RefPtr<TestCallback> callback; 3585 3585 if (!exec->argument(0).isUndefinedOrNull()) { … … 3623 3623 return throwThisTypeError(*exec, "TestObj", "conditionalMethod1"); 3624 3624 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3625 TestObj& impl = castedThis->impl();3625 auto& impl = castedThis->impl(); 3626 3626 JSValue result = jsStringWithCache(exec, impl.conditionalMethod1()); 3627 3627 return JSValue::encode(result); … … 3638 3638 return throwThisTypeError(*exec, "TestObj", "conditionalMethod2"); 3639 3639 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3640 TestObj& impl = castedThis->impl();3640 auto& impl = castedThis->impl(); 3641 3641 impl.conditionalMethod2(); 3642 3642 return JSValue::encode(jsUndefined()); … … 3653 3653 return throwThisTypeError(*exec, "TestObj", "conditionalMethod3"); 3654 3654 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3655 TestObj& impl = castedThis->impl();3655 auto& impl = castedThis->impl(); 3656 3656 impl.conditionalMethod3(); 3657 3657 return JSValue::encode(jsUndefined()); … … 3667 3667 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3668 3668 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3669 TestObj& impl = castedThis->impl();3669 auto& impl = castedThis->impl(); 3670 3670 if (UNLIKELY(exec->argumentCount() < 2)) 3671 3671 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3687 3687 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3688 3688 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3689 TestObj& impl = castedThis->impl();3689 auto& impl = castedThis->impl(); 3690 3690 if (UNLIKELY(exec->argumentCount() < 1)) 3691 3691 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3714 3714 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3715 3715 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3716 TestObj& impl = castedThis->impl();3716 auto& impl = castedThis->impl(); 3717 3717 if (UNLIKELY(exec->argumentCount() < 1)) 3718 3718 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3731 3731 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3732 3732 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3733 TestObj& impl = castedThis->impl();3733 auto& impl = castedThis->impl(); 3734 3734 if (UNLIKELY(exec->argumentCount() < 1)) 3735 3735 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3748 3748 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3749 3749 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3750 TestObj& impl = castedThis->impl();3750 auto& impl = castedThis->impl(); 3751 3751 if (UNLIKELY(exec->argumentCount() < 1)) 3752 3752 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3765 3765 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3766 3766 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3767 TestObj& impl = castedThis->impl();3767 auto& impl = castedThis->impl(); 3768 3768 if (UNLIKELY(exec->argumentCount() < 1)) 3769 3769 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3782 3782 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3783 3783 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3784 TestObj& impl = castedThis->impl();3784 auto& impl = castedThis->impl(); 3785 3785 if (UNLIKELY(exec->argumentCount() < 1)) 3786 3786 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3799 3799 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3800 3800 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3801 TestObj& impl = castedThis->impl();3801 auto& impl = castedThis->impl(); 3802 3802 if (UNLIKELY(exec->argumentCount() < 1)) 3803 3803 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3816 3816 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3817 3817 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3818 TestObj& impl = castedThis->impl();3818 auto& impl = castedThis->impl(); 3819 3819 if (UNLIKELY(exec->argumentCount() < 1)) 3820 3820 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3833 3833 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3834 3834 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3835 TestObj& impl = castedThis->impl();3835 auto& impl = castedThis->impl(); 3836 3836 if (UNLIKELY(exec->argumentCount() < 1)) 3837 3837 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3850 3850 return throwThisTypeError(*exec, "TestObj", "overloadedMethod"); 3851 3851 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3852 TestObj& impl = castedThis->impl();3852 auto& impl = castedThis->impl(); 3853 3853 if (UNLIKELY(exec->argumentCount() < 1)) 3854 3854 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 3975 3975 return throwThisTypeError(*exec, "TestObj", "classMethodWithClamp"); 3976 3976 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 3977 TestObj& impl = castedThis->impl();3977 auto& impl = castedThis->impl(); 3978 3978 if (UNLIKELY(exec->argumentCount() < 2)) 3979 3979 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4005 4005 return throwThisTypeError(*exec, "TestObj", "methodWithUnsignedLongSequence"); 4006 4006 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4007 TestObj& impl = castedThis->impl();4007 auto& impl = castedThis->impl(); 4008 4008 if (UNLIKELY(exec->argumentCount() < 1)) 4009 4009 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4022 4022 return throwThisTypeError(*exec, "TestObj", "stringArrayFunction"); 4023 4023 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4024 TestObj& impl = castedThis->impl();4024 auto& impl = castedThis->impl(); 4025 4025 if (UNLIKELY(exec->argumentCount() < 1)) 4026 4026 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4042 4042 return throwThisTypeError(*exec, "TestObj", "domStringListFunction"); 4043 4043 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4044 TestObj& impl = castedThis->impl();4044 auto& impl = castedThis->impl(); 4045 4045 if (UNLIKELY(exec->argumentCount() < 1)) 4046 4046 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4062 4062 return throwThisTypeError(*exec, "TestObj", "methodWithAndWithoutNullableSequence"); 4063 4063 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4064 TestObj& impl = castedThis->impl();4064 auto& impl = castedThis->impl(); 4065 4065 if (UNLIKELY(exec->argumentCount() < 2)) 4066 4066 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4082 4082 return throwThisTypeError(*exec, "TestObj", "methodWithAndWithoutNullableSequence2"); 4083 4083 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4084 TestObj& impl = castedThis->impl();4084 auto& impl = castedThis->impl(); 4085 4085 if (UNLIKELY(exec->argumentCount() < 2)) 4086 4086 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4102 4102 return throwThisTypeError(*exec, "TestObj", "getSVGDocument"); 4103 4103 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4104 TestObj& impl = castedThis->impl();4104 auto& impl = castedThis->impl(); 4105 4105 ExceptionCode ec = 0; 4106 4106 if (!shouldAllowAccessToNode(exec, impl.getSVGDocument(ec))) … … 4119 4119 return throwThisTypeError(*exec, "TestObj", "convert1"); 4120 4120 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4121 TestObj& impl = castedThis->impl();4121 auto& impl = castedThis->impl(); 4122 4122 if (UNLIKELY(exec->argumentCount() < 1)) 4123 4123 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4136 4136 return throwThisTypeError(*exec, "TestObj", "convert2"); 4137 4137 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4138 TestObj& impl = castedThis->impl();4138 auto& impl = castedThis->impl(); 4139 4139 if (UNLIKELY(exec->argumentCount() < 1)) 4140 4140 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4153 4153 return throwThisTypeError(*exec, "TestObj", "convert4"); 4154 4154 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4155 TestObj& impl = castedThis->impl();4155 auto& impl = castedThis->impl(); 4156 4156 if (UNLIKELY(exec->argumentCount() < 1)) 4157 4157 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4170 4170 return throwThisTypeError(*exec, "TestObj", "convert5"); 4171 4171 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4172 TestObj& impl = castedThis->impl();4172 auto& impl = castedThis->impl(); 4173 4173 if (UNLIKELY(exec->argumentCount() < 1)) 4174 4174 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4187 4187 return throwThisTypeError(*exec, "TestObj", "mutablePointFunction"); 4188 4188 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4189 TestObj& impl = castedThis->impl();4189 auto& impl = castedThis->impl(); 4190 4190 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(SVGPropertyTearOff<SVGPoint>::create(impl.mutablePointFunction()))); 4191 4191 return JSValue::encode(result); … … 4199 4199 return throwThisTypeError(*exec, "TestObj", "immutablePointFunction"); 4200 4200 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4201 TestObj& impl = castedThis->impl();4201 auto& impl = castedThis->impl(); 4202 4202 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(SVGPropertyTearOff<SVGPoint>::create(impl.immutablePointFunction()))); 4203 4203 return JSValue::encode(result); … … 4211 4211 return throwThisTypeError(*exec, "TestObj", "orange"); 4212 4212 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4213 TestObj& impl = castedThis->impl();4213 auto& impl = castedThis->impl(); 4214 4214 impl.banana(); 4215 4215 return JSValue::encode(jsUndefined()); … … 4223 4223 return throwThisTypeError(*exec, "TestObj", "strictFunction"); 4224 4224 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4225 TestObj& impl = castedThis->impl();4225 auto& impl = castedThis->impl(); 4226 4226 if (UNLIKELY(exec->argumentCount() < 3)) 4227 4227 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4249 4249 return throwThisTypeError(*exec, "TestObj", "strictFunctionWithSequence"); 4250 4250 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4251 TestObj& impl = castedThis->impl();4251 auto& impl = castedThis->impl(); 4252 4252 if (UNLIKELY(exec->argumentCount() < 2)) 4253 4253 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4274 4274 return throwThisTypeError(*exec, "TestObj", "strictFunctionWithArray"); 4275 4275 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4276 TestObj& impl = castedThis->impl();4276 auto& impl = castedThis->impl(); 4277 4277 if (UNLIKELY(exec->argumentCount() < 2)) 4278 4278 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4299 4299 return throwThisTypeError(*exec, "TestObj", "variadicStringMethod"); 4300 4300 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4301 TestObj& impl = castedThis->impl();4301 auto& impl = castedThis->impl(); 4302 4302 if (UNLIKELY(exec->argumentCount() < 1)) 4303 4303 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4319 4319 return throwThisTypeError(*exec, "TestObj", "variadicDoubleMethod"); 4320 4320 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4321 TestObj& impl = castedThis->impl();4321 auto& impl = castedThis->impl(); 4322 4322 if (UNLIKELY(exec->argumentCount() < 1)) 4323 4323 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4339 4339 return throwThisTypeError(*exec, "TestObj", "variadicNodeMethod"); 4340 4340 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4341 TestObj& impl = castedThis->impl();4341 auto& impl = castedThis->impl(); 4342 4342 if (UNLIKELY(exec->argumentCount() < 1)) 4343 4343 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4362 4362 return throwThisTypeError(*exec, "TestObj", "any"); 4363 4363 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info()); 4364 TestObj& impl = castedThis->impl();4364 auto& impl = castedThis->impl(); 4365 4365 if (UNLIKELY(exec->argumentCount() < 2)) 4366 4366 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 4377 4377 void JSTestObj::visitChildren(JSCell* cell, SlotVisitor& visitor) 4378 4378 { 4379 JSTestObj* thisObject = jsCast<JSTestObj*>(cell);4379 auto* thisObject = jsCast<JSTestObj*>(cell); 4380 4380 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 4381 4381 Base::visitChildren(thisObject, visitor); … … 4393 4393 void JSTestObjOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 4394 4394 { 4395 JSTestObj* jsTestObj = jsCast<JSTestObj*>(handle.slot()->asCell());4396 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);4395 auto* jsTestObj = jsCast<JSTestObj*>(handle.slot()->asCell()); 4396 auto& world = *static_cast<DOMWrapperWorld*>(context); 4397 4397 uncacheWrapper(world, &jsTestObj->impl(), jsTestObj); 4398 4398 jsTestObj->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp
r181024 r181156 92 92 EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors1(ExecState* exec) 93 93 { 94 JSTestOverloadedConstructorsConstructor* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee());94 auto* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee()); 95 95 if (UNLIKELY(exec->argumentCount() < 1)) 96 96 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 104 104 EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2(ExecState* exec) 105 105 { 106 JSTestOverloadedConstructorsConstructor* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee());106 auto* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee()); 107 107 if (UNLIKELY(exec->argumentCount() < 1)) 108 108 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 116 116 EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors3(ExecState* exec) 117 117 { 118 JSTestOverloadedConstructorsConstructor* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee());118 auto* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee()); 119 119 if (UNLIKELY(exec->argumentCount() < 1)) 120 120 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 128 128 EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors4(ExecState* exec) 129 129 { 130 JSTestOverloadedConstructorsConstructor* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee());130 auto* castedThis = jsCast<JSTestOverloadedConstructorsConstructor*>(exec->callee()); 131 131 if (UNLIKELY(exec->argumentCount() < 1)) 132 132 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 242 242 void JSTestOverloadedConstructorsOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 243 243 { 244 JSTestOverloadedConstructors* jsTestOverloadedConstructors = jsCast<JSTestOverloadedConstructors*>(handle.slot()->asCell());245 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);244 auto* jsTestOverloadedConstructors = jsCast<JSTestOverloadedConstructors*>(handle.slot()->asCell()); 245 auto& world = *static_cast<DOMWrapperWorld*>(context); 246 246 uncacheWrapper(world, &jsTestOverloadedConstructors->impl(), jsTestOverloadedConstructors); 247 247 jsTestOverloadedConstructors->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp
r181024 r181156 170 170 return throwGetterTypeError(*exec, "TestSerializedScriptValueInterface", "value"); 171 171 } 172 TestSerializedScriptValueInterface& impl = castedThis->impl();172 auto& impl = castedThis->impl(); 173 173 JSValue result = impl.value() ? impl.value()->deserialize(exec, castedThis->globalObject(), 0) : jsNull(); 174 174 return JSValue::encode(result); … … 187 187 return throwGetterTypeError(*exec, "TestSerializedScriptValueInterface", "readonlyValue"); 188 188 } 189 TestSerializedScriptValueInterface& impl = castedThis->impl();189 auto& impl = castedThis->impl(); 190 190 JSValue result = impl.readonlyValue() ? impl.readonlyValue()->deserialize(exec, castedThis->globalObject(), 0) : jsNull(); 191 191 return JSValue::encode(result); … … 206 206 if (JSValue cachedValue = castedThis->m_cachedValue.get()) 207 207 return JSValue::encode(cachedValue); 208 TestSerializedScriptValueInterface& impl = castedThis->impl();208 auto& impl = castedThis->impl(); 209 209 JSValue result = impl.cachedValue() ? impl.cachedValue()->deserialize(exec, castedThis->globalObject(), 0) : jsNull(); 210 210 castedThis->m_cachedValue.set(exec->vm(), castedThis, result); … … 224 224 return throwGetterTypeError(*exec, "TestSerializedScriptValueInterface", "ports"); 225 225 } 226 TestSerializedScriptValueInterface& impl = castedThis->impl();226 auto& impl = castedThis->impl(); 227 227 JSValue result = jsArray(exec, castedThis->globalObject(), impl.ports()); 228 228 return JSValue::encode(result); … … 243 243 if (JSValue cachedValue = castedThis->m_cachedReadonlyValue.get()) 244 244 return JSValue::encode(cachedValue); 245 TestSerializedScriptValueInterface& impl = castedThis->impl();245 auto& impl = castedThis->impl(); 246 246 JSValue result = impl.cachedReadonlyValue() ? impl.cachedReadonlyValue()->deserialize(exec, castedThis->globalObject(), 0) : jsNull(); 247 247 castedThis->m_cachedReadonlyValue.set(exec->vm(), castedThis, result); … … 270 270 return; 271 271 } 272 TestSerializedScriptValueInterface& impl = castedThis->impl();272 auto& impl = castedThis->impl(); 273 273 RefPtr<SerializedScriptValue> nativeValue(SerializedScriptValue::create(exec, value, 0, 0)); 274 274 if (UNLIKELY(exec->hadException())) … … 290 290 return; 291 291 } 292 TestSerializedScriptValueInterface& impl = castedThis->impl();292 auto& impl = castedThis->impl(); 293 293 RefPtr<SerializedScriptValue> nativeValue(SerializedScriptValue::create(exec, value, 0, 0)); 294 294 if (UNLIKELY(exec->hadException())) … … 305 305 void JSTestSerializedScriptValueInterface::visitChildren(JSCell* cell, SlotVisitor& visitor) 306 306 { 307 JSTestSerializedScriptValueInterface* thisObject = jsCast<JSTestSerializedScriptValueInterface*>(cell);307 auto* thisObject = jsCast<JSTestSerializedScriptValueInterface*>(cell); 308 308 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 309 309 Base::visitChildren(thisObject, visitor); … … 321 321 void JSTestSerializedScriptValueInterfaceOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 322 322 { 323 JSTestSerializedScriptValueInterface* jsTestSerializedScriptValueInterface = jsCast<JSTestSerializedScriptValueInterface*>(handle.slot()->asCell());324 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);323 auto* jsTestSerializedScriptValueInterface = jsCast<JSTestSerializedScriptValueInterface*>(handle.slot()->asCell()); 324 auto& world = *static_cast<DOMWrapperWorld*>(context); 325 325 uncacheWrapper(world, &jsTestSerializedScriptValueInterface->impl(), jsTestSerializedScriptValueInterface); 326 326 jsTestSerializedScriptValueInterface->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp
r181024 r181156 147 147 EncodedJSValue JSC_HOST_CALL JSTestTypedefsConstructor::constructJSTestTypedefs(ExecState* exec) 148 148 { 149 JSTestTypedefsConstructor* castedThis = jsCast<JSTestTypedefsConstructor*>(exec->callee());149 auto* castedThis = jsCast<JSTestTypedefsConstructor*>(exec->callee()); 150 150 if (UNLIKELY(exec->argumentCount() < 2)) 151 151 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 244 244 bool JSTestTypedefs::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot& slot) 245 245 { 246 JSTestTypedefs* thisObject = jsCast<JSTestTypedefs*>(object);246 auto* thisObject = jsCast<JSTestTypedefs*>(object); 247 247 ASSERT_GC_OBJECT_INHERITS(thisObject, info()); 248 248 return getStaticValueSlot<JSTestTypedefs, Base>(exec, JSTestTypedefsTable, thisObject, propertyName, slot); … … 260 260 return throwGetterTypeError(*exec, "TestTypedefs", "unsignedLongLongAttr"); 261 261 } 262 TestTypedefs& impl = castedThis->impl();262 auto& impl = castedThis->impl(); 263 263 JSValue result = jsNumber(impl.unsignedLongLongAttr()); 264 264 return JSValue::encode(result); … … 277 277 return throwGetterTypeError(*exec, "TestTypedefs", "immutableSerializedScriptValue"); 278 278 } 279 TestTypedefs& impl = castedThis->impl();279 auto& impl = castedThis->impl(); 280 280 JSValue result = impl.immutableSerializedScriptValue() ? impl.immutableSerializedScriptValue()->deserialize(exec, castedThis->globalObject(), 0) : jsNull(); 281 281 return JSValue::encode(result); … … 288 288 UNUSED_PARAM(slotBase); 289 289 UNUSED_PARAM(thisValue); 290 JSTestTypedefs* castedThis = jsCast<JSTestTypedefs*>(slotBase);290 auto* castedThis = jsCast<JSTestTypedefs*>(slotBase); 291 291 return JSValue::encode(JSTestSubObj::getConstructor(exec->vm(), castedThis->globalObject())); 292 292 } … … 305 305 } 306 306 ExceptionCode ec = 0; 307 TestTypedefs& impl = castedThis->impl();307 auto& impl = castedThis->impl(); 308 308 JSValue result = jsNumber(impl.attrWithGetterException(ec)); 309 309 setDOMException(exec, ec); … … 323 323 return throwGetterTypeError(*exec, "TestTypedefs", "attrWithSetterException"); 324 324 } 325 TestTypedefs& impl = castedThis->impl();325 auto& impl = castedThis->impl(); 326 326 JSValue result = jsNumber(impl.attrWithSetterException()); 327 327 return JSValue::encode(result); … … 341 341 } 342 342 ExceptionCode ec = 0; 343 TestTypedefs& impl = castedThis->impl();343 auto& impl = castedThis->impl(); 344 344 JSValue result = jsStringWithCache(exec, impl.stringAttrWithGetterException(ec)); 345 345 setDOMException(exec, ec); … … 359 359 return throwGetterTypeError(*exec, "TestTypedefs", "stringAttrWithSetterException"); 360 360 } 361 TestTypedefs& impl = castedThis->impl();361 auto& impl = castedThis->impl(); 362 362 JSValue result = jsStringWithCache(exec, impl.stringAttrWithSetterException()); 363 363 return JSValue::encode(result); … … 385 385 return; 386 386 } 387 TestTypedefs& impl = castedThis->impl();387 auto& impl = castedThis->impl(); 388 388 unsigned long long nativeValue(toUInt64(exec, value, NormalConversion)); 389 389 if (UNLIKELY(exec->hadException())) … … 405 405 return; 406 406 } 407 TestTypedefs& impl = castedThis->impl();407 auto& impl = castedThis->impl(); 408 408 RefPtr<SerializedScriptValue> nativeValue(SerializedScriptValue::create(exec, value, 0, 0)); 409 409 if (UNLIKELY(exec->hadException())) … … 425 425 return; 426 426 } 427 TestTypedefs& impl = castedThis->impl();427 auto& impl = castedThis->impl(); 428 428 int nativeValue(toInt32(exec, value, NormalConversion)); 429 429 if (UNLIKELY(exec->hadException())) … … 445 445 return; 446 446 } 447 TestTypedefs& impl = castedThis->impl();447 auto& impl = castedThis->impl(); 448 448 ExceptionCode ec = 0; 449 449 int nativeValue(toInt32(exec, value, NormalConversion)); … … 467 467 return; 468 468 } 469 TestTypedefs& impl = castedThis->impl();469 auto& impl = castedThis->impl(); 470 470 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); 471 471 if (UNLIKELY(exec->hadException())) … … 487 487 return; 488 488 } 489 TestTypedefs& impl = castedThis->impl();489 auto& impl = castedThis->impl(); 490 490 ExceptionCode ec = 0; 491 491 const String& nativeValue(value.isEmpty() ? String() : value.toString(exec)->value(exec)); … … 509 509 return throwThisTypeError(*exec, "TestTypedefs", "func"); 510 510 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 511 TestTypedefs& impl = castedThis->impl();511 auto& impl = castedThis->impl(); 512 512 513 513 size_t argsCount = exec->argumentCount(); … … 531 531 return throwThisTypeError(*exec, "TestTypedefs", "setShadow"); 532 532 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 533 TestTypedefs& impl = castedThis->impl();533 auto& impl = castedThis->impl(); 534 534 if (UNLIKELY(exec->argumentCount() < 3)) 535 535 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 572 572 return throwThisTypeError(*exec, "TestTypedefs", "methodWithSequenceArg"); 573 573 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 574 TestTypedefs& impl = castedThis->impl();574 auto& impl = castedThis->impl(); 575 575 if (UNLIKELY(exec->argumentCount() < 1)) 576 576 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 589 589 return throwThisTypeError(*exec, "TestTypedefs", "nullableArrayArg"); 590 590 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 591 TestTypedefs& impl = castedThis->impl();591 auto& impl = castedThis->impl(); 592 592 if (UNLIKELY(exec->argumentCount() < 1)) 593 593 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 606 606 return throwThisTypeError(*exec, "TestTypedefs", "funcWithClamp"); 607 607 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 608 TestTypedefs& impl = castedThis->impl();608 auto& impl = castedThis->impl(); 609 609 if (UNLIKELY(exec->argumentCount() < 1)) 610 610 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 643 643 return throwThisTypeError(*exec, "TestTypedefs", "immutablePointFunction"); 644 644 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 645 TestTypedefs& impl = castedThis->impl();645 auto& impl = castedThis->impl(); 646 646 JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(SVGPropertyTearOff<SVGPoint>::create(impl.immutablePointFunction()))); 647 647 return JSValue::encode(result); … … 655 655 return throwThisTypeError(*exec, "TestTypedefs", "stringArrayFunction"); 656 656 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 657 TestTypedefs& impl = castedThis->impl();657 auto& impl = castedThis->impl(); 658 658 if (UNLIKELY(exec->argumentCount() < 1)) 659 659 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 675 675 return throwThisTypeError(*exec, "TestTypedefs", "stringArrayFunction2"); 676 676 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 677 TestTypedefs& impl = castedThis->impl();677 auto& impl = castedThis->impl(); 678 678 if (UNLIKELY(exec->argumentCount() < 1)) 679 679 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 695 695 return throwThisTypeError(*exec, "TestTypedefs", "callWithSequenceThatRequiresInclude"); 696 696 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 697 TestTypedefs& impl = castedThis->impl();697 auto& impl = castedThis->impl(); 698 698 if (UNLIKELY(exec->argumentCount() < 1)) 699 699 return throwVMError(exec, createNotEnoughArgumentsError(exec)); … … 712 712 return throwThisTypeError(*exec, "TestTypedefs", "methodWithException"); 713 713 ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info()); 714 TestTypedefs& impl = castedThis->impl();714 auto& impl = castedThis->impl(); 715 715 ExceptionCode ec = 0; 716 716 impl.methodWithException(ec); … … 728 728 void JSTestTypedefsOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 729 729 { 730 JSTestTypedefs* jsTestTypedefs = jsCast<JSTestTypedefs*>(handle.slot()->asCell());731 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);730 auto* jsTestTypedefs = jsCast<JSTestTypedefs*>(handle.slot()->asCell()); 731 auto& world = *static_cast<DOMWrapperWorld*>(context); 732 732 uncacheWrapper(world, &jsTestTypedefs->impl(), jsTestTypedefs); 733 733 jsTestTypedefs->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp
r181024 r181156 155 155 return throwGetterTypeError(*exec, "attribute", "readonly"); 156 156 } 157 a ttribute& impl = castedThis->impl();157 auto& impl = castedThis->impl(); 158 158 JSValue result = jsStringWithCache(exec, impl.readonly()); 159 159 return JSValue::encode(result); … … 183 183 void JSattributeOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 184 184 { 185 JSattribute* jsattribute = jsCast<JSattribute*>(handle.slot()->asCell());186 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);185 auto* jsattribute = jsCast<JSattribute*>(handle.slot()->asCell()); 186 auto& world = *static_cast<DOMWrapperWorld*>(context); 187 187 uncacheWrapper(world, &jsattribute->impl(), jsattribute); 188 188 jsattribute->releaseImpl(); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp
r181024 r181156 161 161 void JSreadonlyOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context) 162 162 { 163 JSreadonly* jsreadonly = jsCast<JSreadonly*>(handle.slot()->asCell());164 DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);163 auto* jsreadonly = jsCast<JSreadonly*>(handle.slot()->asCell()); 164 auto& world = *static_cast<DOMWrapperWorld*>(context); 165 165 uncacheWrapper(world, &jsreadonly->impl(), jsreadonly); 166 166 jsreadonly->releaseImpl(); -
trunk/Source/WebCore/dom/MessagePort.cpp
r174225 r181156 225 225 } 226 226 227 bool MessagePort::addEventListener(const AtomicString& eventType, PassRefPtr<EventListener> listener, bool useCapture) 228 { 229 if (listener && listener->isAttribute() && eventType == eventNames().messageEvent) 230 start(); 231 return EventTargetWithInlineData::addEventListener(eventType, listener, useCapture); 232 } 233 227 234 } // namespace WebCore -
trunk/Source/WebCore/dom/MessagePort.h
r175148 r181156 86 86 { 87 87 setAttributeEventListener(eventNames().messageEvent, listener); 88 start();89 88 } 90 89 EventListener* onmessage() { return getAttributeEventListener(eventNames().messageEvent); } … … 100 99 // A port gets neutered when it is transferred to a new owner via postMessage(). 101 100 bool isNeutered() { return !m_entangledChannel; } 101 102 bool addEventListener(const AtomicString& eventType, PassRefPtr<EventListener>, bool useCapture) override; 102 103 103 104 private:
Note: See TracChangeset
for help on using the changeset viewer.