Changeset 292899 in webkit
- Timestamp:
- Apr 14, 2022, 10:44:28 PM (4 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 25 edited
-
ChangeLog (modified) (1 diff)
-
Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp (modified) (2 diffs)
-
bindings/js/JSDOMGlobalObject.cpp (modified) (1 diff)
-
bindings/js/JSDOMMapLike.cpp (modified) (2 diffs)
-
bindings/js/JSDOMSetLike.cpp (modified) (2 diffs)
-
bindings/js/JSDOMWindowBase.cpp (modified) (3 diffs)
-
bindings/js/JSDOMWindowCustom.cpp (modified) (8 diffs)
-
bindings/js/JSEventListener.cpp (modified) (2 diffs)
-
bindings/js/JSLocationCustom.cpp (modified) (2 diffs)
-
bindings/js/JSRemoteDOMWindowCustom.cpp (modified) (1 diff)
-
bindings/js/ReadableStream.cpp (modified) (2 diffs)
-
bindings/js/ScriptController.cpp (modified) (1 diff)
-
bindings/js/ScriptModuleLoader.cpp (modified) (2 diffs)
-
bindings/js/WebCoreBuiltinNames.h (modified) (1 diff)
-
bindings/js/WebCoreJSClientData.h (modified) (1 diff)
-
bindings/scripts/CodeGeneratorJS.pm (modified) (5 diffs)
-
bindings/scripts/test/JS/JSDOMWindow.cpp (modified) (1 diff)
-
bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp (modified) (2 diffs)
-
bindings/scripts/test/JS/JSTestEnabledBySetting.cpp (modified) (1 diff)
-
bindings/scripts/test/JS/JSTestEnabledForContext.cpp (modified) (1 diff)
-
bindings/scripts/test/JS/JSTestGlobalObject.cpp (modified) (1 diff)
-
bindings/scripts/test/JS/JSTestObj.cpp (modified) (1 diff)
-
html/HTMLMediaElement.cpp (modified) (3 diffs)
-
testing/Internals.cpp (modified) (1 diff)
-
workers/WorkerOrWorkletScriptController.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r292898 r292899 1 2022-04-14 Chris Dumez <cdumez@apple.com> 2 3 Use WebCoreBuiltinNames when possible 4 https://bugs.webkit.org/show_bug.cgi?id=239361 5 6 Reviewed by Yusuke Suzuki. 7 8 Use WebCoreBuiltinNames when possible to avoid unnecessary calls to Identifier::fromString(). 9 This is more efficient. 10 11 * Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp: 12 (WebCore::CDMSessionClearKey::update): 13 * bindings/js/JSDOMGlobalObject.cpp: 14 (WebCore::JSDOMGlobalObject::addBuiltinGlobals): 15 * bindings/js/JSDOMMapLike.cpp: 16 (WebCore::getBackingMap): 17 * bindings/js/JSDOMSetLike.cpp: 18 (WebCore::getBackingSet): 19 * bindings/js/JSDOMWindowBase.cpp: 20 (WebCore::JSDOMWindowBase::initStaticGlobals): 21 (WebCore::JSDOMWindowBase::finishCreation): 22 (WebCore::JSDOMWindowBase::updateDocument): 23 * bindings/js/JSDOMWindowCustom.cpp: 24 (WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess): 25 (WebCore::JSDOMWindow::getOwnPropertySlot): 26 (WebCore::JSDOMWindow::put): 27 (WebCore::addCrossOriginPropertyNames): 28 (WebCore::JSDOMWindow::defineOwnProperty): 29 (WebCore::JSDOMWindow::setOpener): 30 (WebCore::JSDOMWindow::openDatabase const): 31 (WebCore::JSDOMWindow::setOpenDatabase): 32 * bindings/js/JSEventListener.cpp: 33 (WebCore::JSEventListener::handleEvent): 34 * bindings/js/JSLocationCustom.cpp: 35 (WebCore::getOwnPropertySlotCommon): 36 (WebCore::JSLocation::put): 37 * bindings/js/JSRemoteDOMWindowCustom.cpp: 38 (WebCore::JSRemoteDOMWindow::put): 39 * bindings/js/ReadableStream.cpp: 40 (WebCore::ReadableStream::create): 41 (WebCore::ReadableStream::lock): 42 * bindings/js/ScriptController.cpp: 43 (WebCore::ScriptController::setupModuleScriptHandlers): 44 * bindings/js/ScriptModuleLoader.cpp: 45 (WebCore::rejectToPropagateNetworkError): 46 (WebCore::rejectWithFetchError): 47 * bindings/js/WebCoreBuiltinNames.h: 48 * bindings/js/WebCoreJSClientData.h: 49 (WebCore::webCoreBuiltinNames): 50 * bindings/scripts/CodeGeneratorJS.pm: 51 (GenerateImplementation): 52 * bindings/scripts/test/JS/JSDOMWindow.cpp: 53 (WebCore::JSDOMWindow::finishCreation): 54 * bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp: 55 (WebCore::JSTestConditionallyReadWritePrototype::finishCreation): 56 (WebCore::JSTestConditionallyReadWrite::finishCreation): 57 * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp: 58 (WebCore::JSTestEnabledBySetting::finishCreation): 59 * bindings/scripts/test/JS/JSTestEnabledForContext.cpp: 60 (WebCore::JSTestEnabledForContext::finishCreation): 61 * bindings/scripts/test/JS/JSTestGlobalObject.cpp: 62 (WebCore::JSTestGlobalObject::finishCreation): 63 * bindings/scripts/test/JS/JSTestObj.cpp: 64 (WebCore::JSTestObjPrototype::finishCreation): 65 * html/HTMLMediaElement.cpp: 66 (WebCore::controllerJSValue): 67 (WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): 68 * testing/Internals.cpp: 69 (WebCore::Internals::cloneArrayBuffer): 70 * workers/WorkerOrWorkletScriptController.cpp: 71 (WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously): 72 (WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule): 73 1 74 2022-04-14 Wenson Hsieh <wenson_hsieh@apple.com> 2 75 -
trunk/Source/WebCore/Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp
r292193 r292899 31 31 #include <pal/text/TextEncoding.h> 32 32 #include "WebKitMediaKeyError.h" 33 #include <JavaScriptCore/BuiltinNames.h> 33 34 #include <JavaScriptCore/JSGlobalObjectInlines.h> 34 35 #include <JavaScriptCore/JSLock.h> … … 110 111 } 111 112 112 auto keysArrayValue = asObject(keysDataValue)->get(&lexicalGlobalObject, Identifier::fromString(vm, "keys"_s));113 auto keysArrayValue = asObject(keysDataValue)->get(&lexicalGlobalObject, vm.propertyNames->builtinNames().keysPublicName()); 113 114 if (scope.exception() || !isJSArray(keysArrayValue)) { 114 115 LOG(Media, "CDMSessionClearKey::update(%p) - failed: keys array missing or empty", this); -
trunk/Source/WebCore/bindings/js/JSDOMGlobalObject.cpp
r292779 r292899 215 215 m_builtinInternalFunctions.initialize(*this); 216 216 217 JSVMClientData& clientData = *static_cast<JSVMClientData*>(vm.clientData);217 auto& builtinNames = webCoreBuiltinNames(vm); 218 218 JSDOMGlobalObject::GlobalPropertyInfo staticGlobals[] = { 219 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().makeThisTypeErrorPrivateName(),219 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeThisTypeErrorPrivateName(), 220 220 JSFunction::create(vm, this, 2, String(), makeThisTypeErrorForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 221 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().makeGetterTypeErrorPrivateName(),221 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeGetterTypeErrorPrivateName(), 222 222 JSFunction::create(vm, this, 2, String(), makeGetterTypeErrorForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 223 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().makeDOMExceptionPrivateName(),223 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeDOMExceptionPrivateName(), 224 224 JSFunction::create(vm, this, 2, String(), makeDOMExceptionForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 225 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().whenSignalAbortedPrivateName(),225 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.whenSignalAbortedPrivateName(), 226 226 JSFunction::create(vm, this, 2, String(), whenSignalAborted), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 227 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().cloneArrayBufferPrivateName(),227 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.cloneArrayBufferPrivateName(), 228 228 JSFunction::create(vm, this, 3, String(), cloneArrayBuffer), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 229 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().structuredCloneForStreamPrivateName(),229 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.structuredCloneForStreamPrivateName(), 230 230 JSFunction::create(vm, this, 1, String(), structuredCloneForStream), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 231 231 JSDOMGlobalObject::GlobalPropertyInfo(vm.propertyNames->builtinNames().ArrayBufferPrivateName(), arrayBufferConstructor(), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 232 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamClosedPrivateName(), jsNumber(1), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),233 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamClosingPrivateName(), jsNumber(2), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),234 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamErroredPrivateName(), jsNumber(3), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),235 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamReadablePrivateName(), jsNumber(4), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),236 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamWaitingPrivateName(), jsNumber(5), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),237 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().streamWritablePrivateName(), jsNumber(6), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),238 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().readableByteStreamAPIEnabledPrivateName(), JSFunction::create(vm, this, 0, String(), isReadableByteStreamAPIEnabled), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),239 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().isAbortSignalPrivateName(), JSFunction::create(vm, this, 1, String(), isAbortSignal), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),240 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().getInternalWritableStreamPrivateName(), JSFunction::create(vm, this, 1, String(), getInternalWritableStream), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),241 JSDOMGlobalObject::GlobalPropertyInfo( clientData.builtinNames().createWritableStreamFromInternalPrivateName(), JSFunction::create(vm, this, 1, String(), createWritableStreamFromInternal), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),232 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamClosedPrivateName(), jsNumber(1), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 233 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamClosingPrivateName(), jsNumber(2), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 234 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamErroredPrivateName(), jsNumber(3), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 235 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamReadablePrivateName(), jsNumber(4), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 236 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamWaitingPrivateName(), jsNumber(5), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 237 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.streamWritablePrivateName(), jsNumber(6), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 238 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.readableByteStreamAPIEnabledPrivateName(), JSFunction::create(vm, this, 0, String(), isReadableByteStreamAPIEnabled), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 239 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.isAbortSignalPrivateName(), JSFunction::create(vm, this, 1, String(), isAbortSignal), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 240 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.getInternalWritableStreamPrivateName(), JSFunction::create(vm, this, 1, String(), getInternalWritableStream), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 241 JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.createWritableStreamFromInternalPrivateName(), JSFunction::create(vm, this, 1, String(), createWritableStreamFromInternal), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly), 242 242 }; 243 243 addStaticGlobals(staticGlobals, WTF_ARRAY_LENGTH(staticGlobals)); -
trunk/Source/WebCore/bindings/js/JSDOMMapLike.cpp
r279924 r292899 37 37 { 38 38 auto& vm = lexicalGlobalObject.vm(); 39 auto backingMap = mapLike.get(&lexicalGlobalObject, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().backingMapPrivateName());39 auto backingMap = mapLike.get(&lexicalGlobalObject, webCoreBuiltinNames(vm).backingMapPrivateName()); 40 40 if (!backingMap.isUndefined()) 41 41 return { false, *JSC::asObject(backingMap) }; … … 47 47 scope.releaseAssertNoException(); 48 48 49 mapLike.putDirect(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().backingMapPrivateName(), backingMap, static_cast<unsigned>(JSC::PropertyAttribute::DontEnum));49 mapLike.putDirect(vm, webCoreBuiltinNames(vm).backingMapPrivateName(), backingMap, static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)); 50 50 return { true, *JSC::asObject(backingMap) }; 51 51 } -
trunk/Source/WebCore/bindings/js/JSDOMSetLike.cpp
r276719 r292899 43 43 { 44 44 auto& vm = lexicalGlobalObject.vm(); 45 auto backingSet = setLike.get(&lexicalGlobalObject, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().backingSetPrivateName());45 auto backingSet = setLike.get(&lexicalGlobalObject, webCoreBuiltinNames(vm).backingSetPrivateName()); 46 46 if (backingSet.isUndefined()) { 47 47 auto& vm = lexicalGlobalObject.vm(); … … 52 52 scope.releaseAssertNoException(); 53 53 54 setLike.putDirect(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().backingSetPrivateName(), backingSet, static_cast<unsigned>(JSC::PropertyAttribute::DontEnum));54 setLike.putDirect(vm, webCoreBuiltinNames(vm).backingSetPrivateName(), backingSet, static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)); 55 55 return { true, *JSC::asObject(backingSet) }; 56 56 } -
trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp
r292697 r292899 109 109 SUPPRESS_ASAN inline void JSDOMWindowBase::initStaticGlobals(JSC::VM& vm) 110 110 { 111 auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();111 auto& builtinNames = webCoreBuiltinNames(vm); 112 112 113 113 GlobalPropertyInfo staticGlobals[] = { … … 129 129 setNeedsSiteSpecificQuirks(true); 130 130 131 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().showModalDialogPublicName(), CustomGetterSetter::create(vm, showModalDialogGetter, nullptr), static_cast<unsigned>(PropertyAttribute::CustomValue));131 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).showModalDialogPublicName(), CustomGetterSetter::create(vm, showModalDialogGetter, nullptr), static_cast<unsigned>(PropertyAttribute::CustomValue)); 132 132 } 133 133 … … 150 150 bool ignoreReadOnlyErrors = true; 151 151 bool putResult = false; 152 symbolTablePutTouchWatchpointSet(this, lexicalGlobalObject, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().documentPublicName(), toJS(lexicalGlobalObject, this, m_wrapped->document()), shouldThrowReadOnlyError, ignoreReadOnlyErrors, putResult);152 symbolTablePutTouchWatchpointSet(this, lexicalGlobalObject, webCoreBuiltinNames(vm).documentPublicName(), toJS(lexicalGlobalObject, this, m_wrapped->document()), shouldThrowReadOnlyError, ignoreReadOnlyErrors, putResult); 153 153 EXCEPTION_ASSERT_UNUSED(scope, !scope.exception()); 154 154 } -
trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp
r292793 r292899 114 114 auto scope = DECLARE_THROW_SCOPE(vm); 115 115 116 auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();116 auto& builtinNames = webCoreBuiltinNames(vm); 117 117 118 118 // https://html.spec.whatwg.org/#crossorigingetownpropertyhelper-(-o,-p-) … … 215 215 216 216 #if ENABLE(USER_MESSAGE_HANDLERS) 217 if (propertyName == static_cast<JSVMClientData*>(lexicalGlobalObject->vm().clientData)->builtinNames().webkitPublicName() && thisObject->wrapped().shouldHaveWebKitNamespaceForWorld(thisObject->world())) {217 if (propertyName == webCoreBuiltinNames(lexicalGlobalObject->vm()).webkitPublicName() && thisObject->wrapped().shouldHaveWebKitNamespaceForWorld(thisObject->world())) { 218 218 slot.setCacheableCustom(thisObject, JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly, jsDOMWindow_webkit); 219 219 return true; … … 256 256 if (!BindingSecurity::shouldAllowAccessToDOMWindow(*lexicalGlobalObject, thisObject->wrapped(), errorMessage)) { 257 257 // We only allow setting "location" attribute cross-origin. 258 if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().locationPublicName()) {258 if (propertyName == webCoreBuiltinNames(vm).locationPublicName()) { 259 259 auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter(); 260 260 scope.release(); … … 328 328 static void addCrossOriginPropertyNames(VM& vm, PropertyNameArray& propertyNames) 329 329 { 330 auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();330 auto& builtinNames = webCoreBuiltinNames(vm); 331 331 switch (objectType) { 332 332 case CrossOriginObject::Location: { … … 414 414 scope.release(); 415 415 416 auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();416 auto& builtinNames = webCoreBuiltinNames(vm); 417 417 if (propertyName == builtinNames.documentPublicName() || propertyName == builtinNames.windowPublicName()) 418 418 return JSObject::defineOwnProperty(thisObject, lexicalGlobalObject, propertyName, descriptor, shouldThrow); … … 587 587 588 588 bool shouldThrow = true; 589 createDataProperty(&lexicalGlobalObject, Identifier::fromString(lexicalGlobalObject.vm(), "opener"_s), value, shouldThrow);589 createDataProperty(&lexicalGlobalObject, webCoreBuiltinNames(lexicalGlobalObject.vm()).openerPublicName(), value, shouldThrow); 590 590 } 591 591 … … 645 645 { 646 646 VM& vm = lexicalGlobalObject.vm(); 647 StringImpl* name = PropertyName( static_cast<JSVMClientData*>(vm.clientData)->builtinNames().openDatabasePublicName()).publicName();647 StringImpl* name = PropertyName(webCoreBuiltinNames(vm).openDatabasePublicName()).publicName(); 648 648 if (RuntimeEnabledFeatures::sharedFeatures().webSQLEnabled()) 649 649 return JSFunction::create(vm, &lexicalGlobalObject, 4, name, jsDOMWindowInstanceFunction_openDatabase, NoIntrinsic); … … 658 658 659 659 bool shouldThrow = true; 660 createDataProperty(&lexicalGlobalObject, Identifier::fromString(lexicalGlobalObject.vm(), "openDatabase"_s), value, shouldThrow);660 createDataProperty(&lexicalGlobalObject, webCoreBuiltinNames(lexicalGlobalObject.vm()).openDatabasePublicName(), value, shouldThrow); 661 661 } 662 662 -
trunk/Source/WebCore/bindings/js/JSEventListener.cpp
r292118 r292899 36 36 #include "JSWorkerGlobalScope.h" 37 37 #include "ScriptController.h" 38 #include "WebCoreJSClientData.h" 38 39 #include "WorkerGlobalScope.h" 39 40 #include <JavaScriptCore/ExceptionHelpers.h> … … 187 188 return; 188 189 189 handleEventFunction = jsFunction->get(lexicalGlobalObject, Identifier::fromString(vm, "handleEvent"_s));190 handleEventFunction = jsFunction->get(lexicalGlobalObject, webCoreBuiltinNames(vm).handleEventPublicName()); 190 191 if (UNLIKELY(scope.exception())) { 191 192 auto* exception = scope.exception(); -
trunk/Source/WebCore/bindings/js/JSLocationCustom.cpp
r280256 r292899 64 64 // Getting location.href cross origin needs to throw. However, getOwnPropertyDescriptor() needs to return 65 65 // a descriptor that has a setter but no getter. 66 if (slot.internalMethodType() == PropertySlot::InternalMethodType::GetOwnProperty && propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().hrefPublicName()) {66 if (slot.internalMethodType() == PropertySlot::InternalMethodType::GetOwnProperty && propertyName == webCoreBuiltinNames(vm).hrefPublicName()) { 67 67 auto* entry = JSLocation::info()->staticPropHashTable->entry(propertyName); 68 68 auto* getterSetter = thisObject.globalObject()->createCrossOriginGetterSetter(&lexicalGlobalObject, propertyName, nullptr, entry->propertyPutter()); … … 121 121 String errorMessage; 122 122 if (!BindingSecurity::shouldAllowAccessToDOMWindow(*lexicalGlobalObject, thisObject->wrapped().window(), errorMessage)) { 123 if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().hrefPublicName()) {123 if (propertyName == webCoreBuiltinNames(vm).hrefPublicName()) { 124 124 auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter(); 125 125 scope.release(); -
trunk/Source/WebCore/bindings/js/JSRemoteDOMWindowCustom.cpp
r278589 r292899 68 68 69 69 // We only allow setting "location" attribute cross-origin. 70 if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().locationPublicName()) {70 if (propertyName == webCoreBuiltinNames(vm).locationPublicName()) { 71 71 auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter(); 72 72 scope.release(); -
trunk/Source/WebCore/bindings/js/ReadableStream.cpp
r287711 r292899 67 67 ExceptionOr<Ref<ReadableStream>> ReadableStream::create(JSC::JSGlobalObject& lexicalGlobalObject, RefPtr<ReadableStreamSource>&& source) 68 68 { 69 auto& clientData = *static_cast<JSVMClientData*>(lexicalGlobalObject.vm().clientData);69 auto& builtinNames = webCoreBuiltinNames(lexicalGlobalObject.vm()); 70 70 71 auto objectOrException = invokeConstructor(lexicalGlobalObject, clientData.builtinNames().ReadableStreamPrivateName(), [&source](auto& args, auto& lexicalGlobalObject, auto& globalObject) {71 auto objectOrException = invokeConstructor(lexicalGlobalObject, builtinNames.ReadableStreamPrivateName(), [&source](auto& args, auto& lexicalGlobalObject, auto& globalObject) { 72 72 args.append(source ? toJSNewlyCreated(&lexicalGlobalObject, &globalObject, source.releaseNonNull()) : JSC::jsUndefined()); 73 73 }); … … 131 131 void ReadableStream::lock() 132 132 { 133 auto& clientData = *static_cast<JSVMClientData*>(m_globalObject->vm().clientData);134 invokeConstructor(*m_globalObject, clientData.builtinNames().ReadableStreamDefaultReaderPrivateName(), [this](auto& args, auto&, auto&) {133 auto& builtinNames = webCoreBuiltinNames(m_globalObject->vm()); 134 invokeConstructor(*m_globalObject, builtinNames.ReadableStreamDefaultReaderPrivateName(), [this](auto& args, auto&, auto&) { 135 135 args.append(readableStream()); 136 136 }); -
trunk/Source/WebCore/bindings/js/ScriptController.cpp
r292870 r292899 337 337 if (errorValue.isObject()) { 338 338 auto* object = JSC::asObject(errorValue); 339 if (JSValue failureKindValue = object->getDirect(vm, static_cast<JSVMClientData&>(*vm.clientData).builtinNames().failureKindPrivateName())) {339 if (JSValue failureKindValue = object->getDirect(vm, webCoreBuiltinNames(vm).failureKindPrivateName())) { 340 340 // This is host propagated error in the module loader pipeline. 341 341 switch (static_cast<ModuleFetchFailureKind>(failureKindValue.asInt32())) { -
trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp
r292799 r292899 152 152 auto* error = JSC::createTypeError(&jsGlobalObject, message); 153 153 ASSERT(error); 154 error->putDirect(vm, static_cast<JSVMClientData&>(*vm.clientData).builtinNames().failureKindPrivateName(), JSC::jsNumber(static_cast<int32_t>(failureKind)));154 error->putDirect(vm, webCoreBuiltinNames(vm).failureKindPrivateName(), JSC::jsNumber(static_cast<int32_t>(failureKind))); 155 155 return error; 156 156 }); … … 164 164 JSC::JSObject* error = jsCast<JSC::JSObject*>(createDOMException(&jsGlobalObject, ec, message)); 165 165 ASSERT(error); 166 error->putDirect(vm, static_cast<JSVMClientData&>(*vm.clientData).builtinNames().failureKindPrivateName(), JSC::jsNumber(static_cast<int32_t>(ModuleFetchFailureKind::WasFetchError)));166 error->putDirect(vm, webCoreBuiltinNames(vm).failureKindPrivateName(), JSC::jsNumber(static_cast<int32_t>(ModuleFetchFailureKind::WasFetchError))); 167 167 return error; 168 168 }); -
trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h
r291867 r292899 474 474 macro(getUserMedia) \ 475 475 macro(gpu) \ 476 macro(handleEvent) \ 476 477 macro(header) \ 477 478 macro(highWaterMark) \ -
trunk/Source/WebCore/bindings/js/WebCoreJSClientData.h
r290217 r292899 209 209 } 210 210 211 ALWAYS_INLINE WebCoreBuiltinNames& webCoreBuiltinNames(JSC::VM& vm) 212 { 213 return static_cast<JSVMClientData*>(vm.clientData)->builtinNames(); 214 } 215 211 216 } // namespace WebCore -
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
r292895 r292899 4609 4609 if (IsAcceleratedDOMAttribute($interface, $attribute)) { 4610 4610 my $classForThis = "${className}::info()"; 4611 push(@implContent, " putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $attributeName . "PublicName(), JSC::DOMAttributeGetterSetter::create(vm, $getter, $setter, JSC::DOMAttributeAnnotation { $classForThis, nullptr }), attributesForStructure($jscAttributes));\n");4611 push(@implContent, " putDirectCustomAccessor(vm, webCoreBuiltinNames(vm)." . $attributeName . "PublicName(), JSC::DOMAttributeGetterSetter::create(vm, $getter, $setter, JSC::DOMAttributeAnnotation { $classForThis, nullptr }), attributesForStructure($jscAttributes));\n"); 4612 4612 } else { 4613 4613 assert("CustomGetterSetter is not allowed for DOMAttribute. DOMAttributeGetterSetter must be used.") if IsAcceleratedDOMAttribute($interface, $attribute); 4614 push(@implContent, " putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $attributeName . "PublicName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n");4614 push(@implContent, " putDirectCustomAccessor(vm, webCoreBuiltinNames(vm)." . $attributeName . "PublicName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n"); 4615 4615 } 4616 4616 push(@implContent, "#endif\n") if $conditionalString; … … 4628 4628 my $conditionalString = $codeGenerator->GenerateConditionalString($operation); 4629 4629 push(@implContent, "#if ${conditionalString}\n") if $conditionalString; 4630 push(@implContent, " putDirect(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $operation->name . "PrivateName(), JSFunction::create(vm, globalObject(), 0, String(), " . GetFunctionName($interface, $className, $operation) . "), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);\n");4630 push(@implContent, " putDirect(vm, webCoreBuiltinNames(vm)." . $operation->name . "PrivateName(), JSFunction::create(vm, globalObject(), 0, String(), " . GetFunctionName($interface, $className, $operation) . "), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);\n"); 4631 4631 push(@implContent, "#endif\n") if $conditionalString; 4632 4632 } … … 4747 4747 4748 4748 if ($attribute->extendedAttributes->{PublicIdentifier} || !$attribute->extendedAttributes->{PrivateIdentifier}) { 4749 push(@implContent, " putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $attributeName . "PublicName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n");4749 push(@implContent, " putDirectCustomAccessor(vm, webCoreBuiltinNames(vm)." . $attributeName . "PublicName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n"); 4750 4750 } 4751 4751 if ($attribute->extendedAttributes->{PrivateIdentifier}) { 4752 push(@implContent, " putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $attributeName . "PrivateName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n");4752 push(@implContent, " putDirectCustomAccessor(vm, webCoreBuiltinNames(vm)." . $attributeName . "PrivateName(), CustomGetterSetter::create(vm, $getter, $setter), attributesForStructure($jscAttributes));\n"); 4753 4753 } 4754 4754 … … 4770 4770 push(@implContent, "#if ${conditionalString}\n") if $conditionalString; 4771 4771 assert("CustomGetterSetter is not allowed for DOMAttribute. DOMAttributeGetterSetter must be used.") if IsAcceleratedDOMAttribute($interface, $attribute); 4772 push(@implContent, " putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $attributeName . "PrivateName(), CustomGetterSetter::create(vm, $getter, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));\n");4772 push(@implContent, " putDirectCustomAccessor(vm, webCoreBuiltinNames(vm)." . $attributeName . "PrivateName(), CustomGetterSetter::create(vm, $getter, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));\n"); 4773 4773 push(@implContent, "#endif\n") if $conditionalString; 4774 4774 } … … 4790 4790 push(@implContent, "#if ${conditionalString}\n") if $conditionalString; 4791 4791 push(@implContent, " if (${runtimeEnableConditionalString})\n"); 4792 my $propertyName = " static_cast<JSVMClientData*>(vm.clientData)->builtinNames()." . $functionName . ($operation->extendedAttributes->{PrivateIdentifier} ? "PrivateName()" : "PublicName()");4792 my $propertyName = "webCoreBuiltinNames(vm)." . $functionName . ($operation->extendedAttributes->{PrivateIdentifier} ? "PrivateName()" : "PublicName()"); 4793 4793 if (IsJSBuiltin($interface, $operation)) { 4794 4794 push(@implContent, " putDirectBuiltinFunction(vm, this, $propertyName, $implementationFunction(vm), attributesForStructure($jsAttributes));\n"); -
trunk/Source/WebCore/bindings/scripts/test/JS/JSDOMWindow.cpp
r291779 r292899 201 201 202 202 if ((jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->isSecureContext() && TestEnabledForContext::enabledForContext(*jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()))) 203 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestEnabledForContextPublicName(), CustomGetterSetter::create(vm, jsDOMWindow_TestEnabledForContextConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));203 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestEnabledForContextPublicName(), CustomGetterSetter::create(vm, jsDOMWindow_TestEnabledForContextConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 204 204 } 205 205 -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp
r292118 r292899 219 219 // Adding back attribute, but as readonly, after removing the read-write variant above. 220 220 if (!RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 221 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().runtimeConditionallyReadWriteAttributePublicName(), JSC::DOMAttributeGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttribute, nullptr, JSC::DOMAttributeAnnotation { JSTestConditionallyReadWrite::info(), nullptr }), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute)));221 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).runtimeConditionallyReadWriteAttributePublicName(), JSC::DOMAttributeGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttribute, nullptr, JSC::DOMAttributeAnnotation { JSTestConditionallyReadWrite::info(), nullptr }), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute))); 222 222 // Adding back attribute, but as readonly, after removing the read-write variant above. 223 223 if (!RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 224 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().runtimeConditionallyReadWriteAttributePromisePublicName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttributePromise, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor)));224 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).runtimeConditionallyReadWriteAttributePromisePublicName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttributePromise, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor))); 225 225 // Adding back attribute, but as readonly, after removing the read-write variant above. 226 226 if (!downcast<Document>(jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext())->settingsValues().testFeatureEnabled) 227 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().settingsConditionallyReadWriteAttributePublicName(), JSC::DOMAttributeGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttribute, nullptr, JSC::DOMAttributeAnnotation { JSTestConditionallyReadWrite::info(), nullptr }), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute)));227 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).settingsConditionallyReadWriteAttributePublicName(), JSC::DOMAttributeGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttribute, nullptr, JSC::DOMAttributeAnnotation { JSTestConditionallyReadWrite::info(), nullptr }), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute))); 228 228 // Adding back attribute, but as readonly, after removing the read-write variant above. 229 229 if (!downcast<Document>(jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext())->settingsValues().testFeatureEnabled) 230 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().settingsConditionallyReadWriteAttributePromisePublicName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttributePromise, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor)));230 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).settingsConditionallyReadWriteAttributePromisePublicName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttributePromise, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor))); 231 231 if (hasDisabledRuntimeProperties && structure()->isDictionary()) 232 232 flattenDictionaryObject(vm); … … 248 248 static_assert(!std::is_base_of<ActiveDOMObject, TestConditionallyReadWrite>::value, "Interface is not marked as [ActiveDOMObject] even though implementation class subclasses ActiveDOMObject."); 249 249 250 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().runtimeConditionallyReadWriteAttributeUnforgeablePrivatePrivateName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttributeUnforgeablePrivate, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));251 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().settingsConditionallyReadWriteAttributeUnforgeablePrivatePrivateName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttributeUnforgeablePrivate, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));250 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).runtimeConditionallyReadWriteAttributeUnforgeablePrivatePrivateName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_runtimeConditionallyReadWriteAttributeUnforgeablePrivate, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly)); 251 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).settingsConditionallyReadWriteAttributeUnforgeablePrivatePrivateName(), CustomGetterSetter::create(vm, jsTestConditionallyReadWrite_settingsConditionallyReadWriteAttributeUnforgeablePrivate, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly)); 252 252 } 253 253 -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEnabledBySetting.cpp
r292118 r292899 252 252 253 253 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->settingsValues().testSettingEnabled) 254 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestSubObjEnabledBySettingPublicName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));254 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestSubObjEnabledBySettingPublicName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 255 255 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->settingsValues().testSettingEnabled) 256 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestSubObjEnabledBySettingPrivatePrivateName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivateConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));256 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestSubObjEnabledBySettingPrivatePrivateName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivateConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 257 257 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->settingsValues().testSettingEnabled) { 258 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestSubObjEnabledBySettingPrivatePublicPublicName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivatePublicConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));259 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestSubObjEnabledBySettingPrivatePublicPrivateName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivatePublicConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));258 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestSubObjEnabledBySettingPrivatePublicPublicName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivatePublicConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 259 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestSubObjEnabledBySettingPrivatePublicPrivateName(), CustomGetterSetter::create(vm, jsTestEnabledBySetting_TestSubObjEnabledBySettingPrivatePublicConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 260 260 } 261 261 } -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEnabledForContext.cpp
r291779 r292899 135 135 136 136 if ((jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->settingsValues().testSettingEnabled && TestSubObjEnabledForContext::enabledForContext(*jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()))) 137 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestSubObjEnabledForContextPublicName(), CustomGetterSetter::create(vm, jsTestEnabledForContext_TestSubObjEnabledForContextConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));137 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestSubObjEnabledForContextPublicName(), CustomGetterSetter::create(vm, jsTestEnabledForContext_TestSubObjEnabledForContextConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 138 138 } 139 139 -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp
r291779 r292899 678 678 #if ENABLE(TEST_FEATURE) 679 679 if (RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 680 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledAtRuntimeAttributePublicName(), CustomGetterSetter::create(vm, jsTestGlobalObject_enabledAtRuntimeAttribute, setJSTestGlobalObject_enabledAtRuntimeAttribute), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor)));680 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).enabledAtRuntimeAttributePublicName(), CustomGetterSetter::create(vm, jsTestGlobalObject_enabledAtRuntimeAttribute, setJSTestGlobalObject_enabledAtRuntimeAttribute), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::CustomAccessor))); 681 681 #endif 682 682 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->isSecureContext()) 683 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().TestInterfaceNamePublicName(), CustomGetterSetter::create(vm, jsTestGlobalObject_TestInterfaceNameConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)));684 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().publicAndPrivateAttributePrivateName(), CustomGetterSetter::create(vm, jsTestGlobalObject_publicAndPrivateAttribute, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));685 #if ENABLE(TEST_FEATURE) 686 putDirectCustomAccessor(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().publicAndPrivateConditionalAttributePrivateName(), CustomGetterSetter::create(vm, jsTestGlobalObject_publicAndPrivateConditionalAttribute, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly));683 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).TestInterfaceNamePublicName(), CustomGetterSetter::create(vm, jsTestGlobalObject_TestInterfaceNameConstructor, nullptr), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::DontEnum))); 684 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).publicAndPrivateAttributePrivateName(), CustomGetterSetter::create(vm, jsTestGlobalObject_publicAndPrivateAttribute, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly)); 685 #if ENABLE(TEST_FEATURE) 686 putDirectCustomAccessor(vm, webCoreBuiltinNames(vm).publicAndPrivateConditionalAttributePrivateName(), CustomGetterSetter::create(vm, jsTestGlobalObject_publicAndPrivateConditionalAttribute, nullptr), attributesForStructure(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly)); 687 687 #endif 688 688 #if ENABLE(TEST_FEATURE) 689 689 if (RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 690 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledAtRuntimeOperationPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledAtRuntimeOperation, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));690 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).enabledAtRuntimeOperationPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledAtRuntimeOperation, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 691 691 #endif 692 692 #if ENABLE(TEST_FEATURE) 693 693 if (RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 694 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledAtRuntimeOperationStaticPublicName(), 1, jsTestGlobalObjectConstructorFunction_enabledAtRuntimeOperationStatic, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));694 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).enabledAtRuntimeOperationStaticPublicName(), 1, jsTestGlobalObjectConstructorFunction_enabledAtRuntimeOperationStatic, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 695 695 #endif 696 696 if (worldForDOMObject(*this).specificWorld()) 697 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledInSpecificWorldPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorld, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));697 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).enabledInSpecificWorldPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorld, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 698 698 if ((worldForDOMObject(*this).specificWorld() && RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled())) 699 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledInSpecificWorldWhenRuntimeFeatureEnabledPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorldWhenRuntimeFeatureEnabled, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));699 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).enabledInSpecificWorldWhenRuntimeFeatureEnabledPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorldWhenRuntimeFeatureEnabled, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 700 700 if ((worldForDOMObject(*this).specificWorld() && RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled() && RuntimeEnabledFeatures::sharedFeatures().testFeature1Enabled())) 701 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().enabledInSpecificWorldWhenRuntimeFeaturesEnabledPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorldWhenRuntimeFeaturesEnabled, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));701 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).enabledInSpecificWorldWhenRuntimeFeaturesEnabledPublicName(), 1, jsTestGlobalObjectInstanceFunction_enabledInSpecificWorldWhenRuntimeFeaturesEnabled, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 702 702 #if ENABLE(TEST_FEATURE) 703 703 if (RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 704 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().testPrivateFunctionPrivateName(), 0, jsTestGlobalObjectInstanceFunction_testPrivateFunction, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));704 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).testPrivateFunctionPrivateName(), 0, jsTestGlobalObjectInstanceFunction_testPrivateFunction, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 705 705 #endif 706 706 #if ENABLE(TEST_FEATURE) 707 707 if (RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled()) 708 putDirectBuiltinFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().testJSBuiltinFunctionPublicName(), testGlobalObjectTestJSBuiltinFunctionCodeGenerator(vm), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Builtin)));708 putDirectBuiltinFunction(vm, this, webCoreBuiltinNames(vm).testJSBuiltinFunctionPublicName(), testGlobalObjectTestJSBuiltinFunctionCodeGenerator(vm), attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Builtin))); 709 709 #endif 710 710 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->isSecureContext()) 711 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().calculateSecretResultPublicName(), 0, jsTestGlobalObjectInstanceFunction_calculateSecretResult, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));711 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).calculateSecretResultPublicName(), 0, jsTestGlobalObjectInstanceFunction_calculateSecretResult, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 712 712 if (jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->isSecureContext()) 713 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().getSecretBooleanPublicName(), 0, jsTestGlobalObjectInstanceFunction_getSecretBoolean, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));713 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).getSecretBooleanPublicName(), 0, jsTestGlobalObjectInstanceFunction_getSecretBoolean, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 714 714 #if ENABLE(TEST_FEATURE) 715 715 if ((jsCast<JSDOMGlobalObject*>(globalObject())->scriptExecutionContext()->isSecureContext() && RuntimeEnabledFeatures::sharedFeatures().testFeatureEnabled())) 716 putDirectNativeFunction(vm, this, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().testFeatureGetSecretBooleanPublicName(), 0, jsTestGlobalObjectInstanceFunction_testFeatureGetSecretBoolean, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function)));716 putDirectNativeFunction(vm, this, webCoreBuiltinNames(vm).testFeatureGetSecretBooleanPublicName(), 0, jsTestGlobalObjectInstanceFunction_testFeatureGetSecretBoolean, NoIntrinsic, attributesForStructure(static_cast<unsigned>(JSC::PropertyAttribute::Function))); 717 717 #endif 718 718 } -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp
r292118 r292899 2529 2529 if (hasDisabledRuntimeProperties && structure()->isDictionary()) 2530 2530 flattenDictionaryObject(vm); 2531 putDirect(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().privateMethodPrivateName(), JSFunction::create(vm, globalObject(), 0, String(), jsTestObjPrototypeFunction_privateMethod), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);2532 putDirect(vm, static_cast<JSVMClientData*>(vm.clientData)->builtinNames().publicAndPrivateMethodPrivateName(), JSFunction::create(vm, globalObject(), 0, String(), jsTestObjPrototypeFunction_publicAndPrivateMethod), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);2531 putDirect(vm, webCoreBuiltinNames(vm).privateMethodPrivateName(), JSFunction::create(vm, globalObject(), 0, String(), jsTestObjPrototypeFunction_privateMethod), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum); 2532 putDirect(vm, webCoreBuiltinNames(vm).publicAndPrivateMethodPrivateName(), JSFunction::create(vm, globalObject(), 0, String(), jsTestObjPrototypeFunction_publicAndPrivateMethod), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum); 2533 2533 putDirect(vm, vm.propertyNames->iteratorSymbol, globalObject()->arrayPrototype()->getDirect(vm, vm.propertyNames->builtinNames().valuesPrivateName()), static_cast<unsigned>(JSC::PropertyAttribute::DontEnum)); 2534 2534 addValueIterableMethods(*globalObject(), *this); -
trunk/Source/WebCore/html/HTMLMediaElement.cpp
r292878 r292899 119 119 #include "VideoTrackList.h" 120 120 #include "VideoTrackPrivate.h" 121 #include "WebCoreJSClientData.h" 121 122 #include <JavaScriptCore/ScriptObject.h> 122 123 #include <JavaScriptCore/Uint8Array.h> … … 4609 4610 return JSC::jsNull(); 4610 4611 4611 JSC::Identifier controllerID = JSC::Identifier::fromString(vm, "controller"_s);4612 JSC::Identifier controllerID = webCoreBuiltinNames(vm).controllerPublicName(); 4612 4613 JSC::JSValue controllerJSWrapper = controlsHostJSWrapperObject->get(&lexicalGlobalObject, controllerID); 4613 4614 RETURN_IF_EXCEPTION(scope, JSC::jsNull()); … … 7759 7760 return false; 7760 7761 7761 auto controller = JSC::Identifier::fromString(vm, "controller"_s);7762 auto controller = webCoreBuiltinNames(vm).controllerPublicName(); 7762 7763 7763 7764 ASSERT(!controllerObject->hasProperty(&lexicalGlobalObject, controller)); -
trunk/Source/WebCore/testing/Internals.cpp
r292859 r292899 5068 5068 JSValue Internals::cloneArrayBuffer(JSC::JSGlobalObject& lexicalGlobalObject, JSValue buffer, JSValue srcByteOffset, JSValue srcLength) 5069 5069 { 5070 JSC::VM& vm = lexicalGlobalObject.vm(); 5071 JSVMClientData* clientData = static_cast<JSVMClientData*>(vm.clientData); 5072 const Identifier& privateName = clientData->builtinNames().cloneArrayBufferPrivateName(); 5070 auto& vm = lexicalGlobalObject.vm(); 5071 const Identifier& privateName = webCoreBuiltinNames(vm).cloneArrayBufferPrivateName(); 5073 5072 JSValue value; 5074 5073 PropertySlot propertySlot(value, PropertySlot::InternalMethodType::Get); -
trunk/Source/WebCore/workers/WorkerOrWorkletScriptController.cpp
r292799 r292899 306 306 if (errorValue.isObject()) { 307 307 auto* object = JSC::asObject(errorValue); 308 if (JSValue failureKindValue = object->getDirect(vm, static_cast<JSVMClientData&>(*vm.clientData).builtinNames().failureKindPrivateName())) {308 if (JSValue failureKindValue = object->getDirect(vm, webCoreBuiltinNames(vm).failureKindPrivateName())) { 309 309 // This is host propagated error in the module loader pipeline. 310 310 switch (static_cast<ModuleFetchFailureKind>(failureKindValue.asInt32())) { … … 481 481 if (errorValue.isObject()) { 482 482 auto* object = JSC::asObject(errorValue); 483 if (JSValue failureKindValue = object->getDirect(vm, static_cast<JSVMClientData&>(*vm.clientData).builtinNames().failureKindPrivateName())) {483 if (JSValue failureKindValue = object->getDirect(vm, webCoreBuiltinNames(vm).failureKindPrivateName())) { 484 484 auto catchScope = DECLARE_CATCH_SCOPE(vm); 485 485 String message = retrieveErrorMessageWithoutName(*globalObject, vm, object, catchScope);
Note:
See TracChangeset
for help on using the changeset viewer.