⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 292899 in webkit


Ignore:
Timestamp:
Apr 14, 2022, 10:44:28 PM (4 years ago)
Author:
Chris Dumez
Message:

Use WebCoreBuiltinNames when possible
https://bugs.webkit.org/show_bug.cgi?id=239361

Reviewed by Yusuke Suzuki.

Use WebCoreBuiltinNames when possible to avoid unnecessary calls to Identifier::fromString().
This is more efficient.

  • Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp:

(WebCore::CDMSessionClearKey::update):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::addBuiltinGlobals):

  • bindings/js/JSDOMMapLike.cpp:

(WebCore::getBackingMap):

  • bindings/js/JSDOMSetLike.cpp:

(WebCore::getBackingSet):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::initStaticGlobals):
(WebCore::JSDOMWindowBase::finishCreation):
(WebCore::JSDOMWindowBase::updateDocument):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::put):
(WebCore::addCrossOriginPropertyNames):
(WebCore::JSDOMWindow::defineOwnProperty):
(WebCore::JSDOMWindow::setOpener):
(WebCore::JSDOMWindow::openDatabase const):
(WebCore::JSDOMWindow::setOpenDatabase):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::getOwnPropertySlotCommon):
(WebCore::JSLocation::put):

  • bindings/js/JSRemoteDOMWindowCustom.cpp:

(WebCore::JSRemoteDOMWindow::put):

  • bindings/js/ReadableStream.cpp:

(WebCore::ReadableStream::create):
(WebCore::ReadableStream::lock):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::setupModuleScriptHandlers):

  • bindings/js/ScriptModuleLoader.cpp:

(WebCore::rejectToPropagateNetworkError):
(WebCore::rejectWithFetchError):

  • bindings/js/WebCoreBuiltinNames.h:
  • bindings/js/WebCoreJSClientData.h:

(WebCore::webCoreBuiltinNames):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSDOMWindow.cpp:

(WebCore::JSDOMWindow::finishCreation):

  • bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:

(WebCore::JSTestConditionallyReadWritePrototype::finishCreation):
(WebCore::JSTestConditionallyReadWrite::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySetting::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledForContext.cpp:

(WebCore::JSTestEnabledForContext::finishCreation):

  • bindings/scripts/test/JS/JSTestGlobalObject.cpp:

(WebCore::JSTestGlobalObject::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjPrototype::finishCreation):

  • html/HTMLMediaElement.cpp:

(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):

  • testing/Internals.cpp:

(WebCore::Internals::cloneArrayBuffer):

  • workers/WorkerOrWorkletScriptController.cpp:

(WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously):
(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):

Location:
trunk/Source/WebCore
Files:
25 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r292898 r292899  
     12022-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
    1742022-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
    275
  • trunk/Source/WebCore/Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp

    r292193 r292899  
    3131#include <pal/text/TextEncoding.h>
    3232#include "WebKitMediaKeyError.h"
     33#include <JavaScriptCore/BuiltinNames.h>
    3334#include <JavaScriptCore/JSGlobalObjectInlines.h>
    3435#include <JavaScriptCore/JSLock.h>
     
    110111        }
    111112
    112         auto keysArrayValue = asObject(keysDataValue)->get(&lexicalGlobalObject, Identifier::fromString(vm, "keys"_s));
     113        auto keysArrayValue = asObject(keysDataValue)->get(&lexicalGlobalObject, vm.propertyNames->builtinNames().keysPublicName());
    113114        if (scope.exception() || !isJSArray(keysArrayValue)) {
    114115            LOG(Media, "CDMSessionClearKey::update(%p) - failed: keys array missing or empty", this);
  • trunk/Source/WebCore/bindings/js/JSDOMGlobalObject.cpp

    r292779 r292899  
    215215    m_builtinInternalFunctions.initialize(*this);
    216216
    217     JSVMClientData& clientData = *static_cast<JSVMClientData*>(vm.clientData);
     217    auto& builtinNames = webCoreBuiltinNames(vm);
    218218    JSDOMGlobalObject::GlobalPropertyInfo staticGlobals[] = {
    219         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().makeThisTypeErrorPrivateName(),
     219        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeThisTypeErrorPrivateName(),
    220220            JSFunction::create(vm, this, 2, String(), makeThisTypeErrorForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    221         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().makeGetterTypeErrorPrivateName(),
     221        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeGetterTypeErrorPrivateName(),
    222222            JSFunction::create(vm, this, 2, String(), makeGetterTypeErrorForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    223         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().makeDOMExceptionPrivateName(),
     223        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.makeDOMExceptionPrivateName(),
    224224            JSFunction::create(vm, this, 2, String(), makeDOMExceptionForBuiltins), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    225         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().whenSignalAbortedPrivateName(),
     225        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.whenSignalAbortedPrivateName(),
    226226            JSFunction::create(vm, this, 2, String(), whenSignalAborted), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    227         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().cloneArrayBufferPrivateName(),
     227        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.cloneArrayBufferPrivateName(),
    228228            JSFunction::create(vm, this, 3, String(), cloneArrayBuffer), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    229         JSDOMGlobalObject::GlobalPropertyInfo(clientData.builtinNames().structuredCloneForStreamPrivateName(),
     229        JSDOMGlobalObject::GlobalPropertyInfo(builtinNames.structuredCloneForStreamPrivateName(),
    230230            JSFunction::create(vm, this, 1, String(), structuredCloneForStream), PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly),
    231231        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),
    242242    };
    243243    addStaticGlobals(staticGlobals, WTF_ARRAY_LENGTH(staticGlobals));
  • trunk/Source/WebCore/bindings/js/JSDOMMapLike.cpp

    r279924 r292899  
    3737{
    3838    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());
    4040    if (!backingMap.isUndefined())
    4141        return { false, *JSC::asObject(backingMap) };
     
    4747    scope.releaseAssertNoException();
    4848
    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));
    5050    return { true, *JSC::asObject(backingMap) };
    5151}
  • trunk/Source/WebCore/bindings/js/JSDOMSetLike.cpp

    r276719 r292899  
    4343{
    4444    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());
    4646    if (backingSet.isUndefined()) {
    4747        auto& vm = lexicalGlobalObject.vm();
     
    5252        scope.releaseAssertNoException();
    5353
    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));
    5555        return { true, *JSC::asObject(backingSet) };
    5656    }
  • trunk/Source/WebCore/bindings/js/JSDOMWindowBase.cpp

    r292697 r292899  
    109109SUPPRESS_ASAN inline void JSDOMWindowBase::initStaticGlobals(JSC::VM& vm)
    110110{
    111     auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();
     111    auto& builtinNames = webCoreBuiltinNames(vm);
    112112
    113113    GlobalPropertyInfo staticGlobals[] = {
     
    129129        setNeedsSiteSpecificQuirks(true);
    130130
    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));
    132132}
    133133
     
    150150    bool ignoreReadOnlyErrors = true;
    151151    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);
    153153    EXCEPTION_ASSERT_UNUSED(scope, !scope.exception());
    154154}
  • trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp

    r292793 r292899  
    114114    auto scope = DECLARE_THROW_SCOPE(vm);
    115115
    116     auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();
     116    auto& builtinNames = webCoreBuiltinNames(vm);
    117117
    118118    // https://html.spec.whatwg.org/#crossorigingetownpropertyhelper-(-o,-p-)
     
    215215
    216216#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())) {
    218218        slot.setCacheableCustom(thisObject, JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly, jsDOMWindow_webkit);
    219219        return true;
     
    256256    if (!BindingSecurity::shouldAllowAccessToDOMWindow(*lexicalGlobalObject, thisObject->wrapped(), errorMessage)) {
    257257        // We only allow setting "location" attribute cross-origin.
    258         if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().locationPublicName()) {
     258        if (propertyName == webCoreBuiltinNames(vm).locationPublicName()) {
    259259            auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter();
    260260            scope.release();
     
    328328static void addCrossOriginPropertyNames(VM& vm, PropertyNameArray& propertyNames)
    329329{
    330     auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();
     330    auto& builtinNames = webCoreBuiltinNames(vm);
    331331    switch (objectType) {
    332332    case CrossOriginObject::Location: {
     
    414414    scope.release();
    415415
    416     auto& builtinNames = static_cast<JSVMClientData*>(vm.clientData)->builtinNames();
     416    auto& builtinNames = webCoreBuiltinNames(vm);
    417417    if (propertyName == builtinNames.documentPublicName() || propertyName == builtinNames.windowPublicName())
    418418        return JSObject::defineOwnProperty(thisObject, lexicalGlobalObject, propertyName, descriptor, shouldThrow);
     
    587587
    588588    bool shouldThrow = true;
    589     createDataProperty(&lexicalGlobalObject, Identifier::fromString(lexicalGlobalObject.vm(), "opener"_s), value, shouldThrow);
     589    createDataProperty(&lexicalGlobalObject, webCoreBuiltinNames(lexicalGlobalObject.vm()).openerPublicName(), value, shouldThrow);
    590590}
    591591
     
    645645{
    646646    VM& vm = lexicalGlobalObject.vm();
    647     StringImpl* name = PropertyName(static_cast<JSVMClientData*>(vm.clientData)->builtinNames().openDatabasePublicName()).publicName();
     647    StringImpl* name = PropertyName(webCoreBuiltinNames(vm).openDatabasePublicName()).publicName();
    648648    if (RuntimeEnabledFeatures::sharedFeatures().webSQLEnabled())
    649649        return JSFunction::create(vm, &lexicalGlobalObject, 4, name, jsDOMWindowInstanceFunction_openDatabase, NoIntrinsic);
     
    658658
    659659    bool shouldThrow = true;
    660     createDataProperty(&lexicalGlobalObject, Identifier::fromString(lexicalGlobalObject.vm(), "openDatabase"_s), value, shouldThrow);
     660    createDataProperty(&lexicalGlobalObject, webCoreBuiltinNames(lexicalGlobalObject.vm()).openDatabasePublicName(), value, shouldThrow);
    661661}
    662662
  • trunk/Source/WebCore/bindings/js/JSEventListener.cpp

    r292118 r292899  
    3636#include "JSWorkerGlobalScope.h"
    3737#include "ScriptController.h"
     38#include "WebCoreJSClientData.h"
    3839#include "WorkerGlobalScope.h"
    3940#include <JavaScriptCore/ExceptionHelpers.h>
     
    187188            return;
    188189
    189         handleEventFunction = jsFunction->get(lexicalGlobalObject, Identifier::fromString(vm, "handleEvent"_s));
     190        handleEventFunction = jsFunction->get(lexicalGlobalObject, webCoreBuiltinNames(vm).handleEventPublicName());
    190191        if (UNLIKELY(scope.exception())) {
    191192            auto* exception = scope.exception();
  • trunk/Source/WebCore/bindings/js/JSLocationCustom.cpp

    r280256 r292899  
    6464    // Getting location.href cross origin needs to throw. However, getOwnPropertyDescriptor() needs to return
    6565    // 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()) {
    6767        auto* entry = JSLocation::info()->staticPropHashTable->entry(propertyName);
    6868        auto* getterSetter = thisObject.globalObject()->createCrossOriginGetterSetter(&lexicalGlobalObject, propertyName, nullptr, entry->propertyPutter());
     
    121121    String errorMessage;
    122122    if (!BindingSecurity::shouldAllowAccessToDOMWindow(*lexicalGlobalObject, thisObject->wrapped().window(), errorMessage)) {
    123         if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().hrefPublicName()) {
     123        if (propertyName == webCoreBuiltinNames(vm).hrefPublicName()) {
    124124            auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter();
    125125            scope.release();
  • trunk/Source/WebCore/bindings/js/JSRemoteDOMWindowCustom.cpp

    r278589 r292899  
    6868
    6969    // We only allow setting "location" attribute cross-origin.
    70     if (propertyName == static_cast<JSVMClientData*>(vm.clientData)->builtinNames().locationPublicName()) {
     70    if (propertyName == webCoreBuiltinNames(vm).locationPublicName()) {
    7171        auto* setter = s_info.staticPropHashTable->entry(propertyName)->propertyPutter();
    7272        scope.release();
  • trunk/Source/WebCore/bindings/js/ReadableStream.cpp

    r287711 r292899  
    6767ExceptionOr<Ref<ReadableStream>> ReadableStream::create(JSC::JSGlobalObject& lexicalGlobalObject, RefPtr<ReadableStreamSource>&& source)
    6868{
    69     auto& clientData = *static_cast<JSVMClientData*>(lexicalGlobalObject.vm().clientData);
     69    auto& builtinNames = webCoreBuiltinNames(lexicalGlobalObject.vm());
    7070
    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) {
    7272        args.append(source ? toJSNewlyCreated(&lexicalGlobalObject, &globalObject, source.releaseNonNull()) : JSC::jsUndefined());
    7373    });
     
    131131void ReadableStream::lock()
    132132{
    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&) {
    135135        args.append(readableStream());
    136136    });
  • trunk/Source/WebCore/bindings/js/ScriptController.cpp

    r292870 r292899  
    337337        if (errorValue.isObject()) {
    338338            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())) {
    340340                // This is host propagated error in the module loader pipeline.
    341341                switch (static_cast<ModuleFetchFailureKind>(failureKindValue.asInt32())) {
  • trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp

    r292799 r292899  
    152152        auto* error = JSC::createTypeError(&jsGlobalObject, message);
    153153        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)));
    155155        return error;
    156156    });
     
    164164        JSC::JSObject* error = jsCast<JSC::JSObject*>(createDOMException(&jsGlobalObject, ec, message));
    165165        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)));
    167167        return error;
    168168    });
  • trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h

    r291867 r292899  
    474474    macro(getUserMedia) \
    475475    macro(gpu) \
     476    macro(handleEvent) \
    476477    macro(header) \
    477478    macro(highWaterMark) \
  • trunk/Source/WebCore/bindings/js/WebCoreJSClientData.h

    r290217 r292899  
    209209}
    210210
     211ALWAYS_INLINE WebCoreBuiltinNames& webCoreBuiltinNames(JSC::VM& vm)
     212{
     213    return static_cast<JSVMClientData*>(vm.clientData)->builtinNames();
     214}
     215
    211216} // namespace WebCore
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r292895 r292899  
    46094609                if (IsAcceleratedDOMAttribute($interface, $attribute)) {
    46104610                    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");
    46124612                } else {
    46134613                    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");
    46154615                }
    46164616                push(@implContent, "#endif\n") if $conditionalString;
     
    46284628            my $conditionalString = $codeGenerator->GenerateConditionalString($operation);
    46294629            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");
    46314631            push(@implContent, "#endif\n") if $conditionalString;
    46324632        }
     
    47474747
    47484748        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");
    47504750        }
    47514751        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");
    47534753        }
    47544754
     
    47704770        push(@implContent, "#if ${conditionalString}\n") if $conditionalString;
    47714771        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");
    47734773        push(@implContent, "#endif\n") if $conditionalString;
    47744774    }
     
    47904790        push(@implContent, "#if ${conditionalString}\n") if $conditionalString;
    47914791        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()");
    47934793        if (IsJSBuiltin($interface, $operation)) {
    47944794            push(@implContent, "        putDirectBuiltinFunction(vm, this, $propertyName, $implementationFunction(vm), attributesForStructure($jsAttributes));\n");
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSDOMWindow.cpp

    r291779 r292899  
    201201
    202202    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)));
    204204}
    205205
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp

    r292118 r292899  
    219219    // Adding back attribute, but as readonly, after removing the read-write variant above.
    220220    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)));
    222222    // Adding back attribute, but as readonly, after removing the read-write variant above.
    223223    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)));
    225225    // Adding back attribute, but as readonly, after removing the read-write variant above.
    226226    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)));
    228228    // Adding back attribute, but as readonly, after removing the read-write variant above.
    229229    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)));
    231231    if (hasDisabledRuntimeProperties && structure()->isDictionary())
    232232        flattenDictionaryObject(vm);
     
    248248    static_assert(!std::is_base_of<ActiveDOMObject, TestConditionallyReadWrite>::value, "Interface is not marked as [ActiveDOMObject] even though implementation class subclasses ActiveDOMObject.");
    249249
    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));
    252252}
    253253
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEnabledBySetting.cpp

    r292118 r292899  
    252252
    253253    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)));
    255255    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)));
    257257    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)));
    260260    }
    261261}
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEnabledForContext.cpp

    r291779 r292899  
    135135
    136136    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)));
    138138}
    139139
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp

    r291779 r292899  
    678678#if ENABLE(TEST_FEATURE)
    679679    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)));
    681681#endif
    682682    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));
    687687#endif
    688688#if ENABLE(TEST_FEATURE)
    689689    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)));
    691691#endif
    692692#if ENABLE(TEST_FEATURE)
    693693    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)));
    695695#endif
    696696    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)));
    698698    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)));
    700700    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)));
    702702#if ENABLE(TEST_FEATURE)
    703703    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)));
    705705#endif
    706706#if ENABLE(TEST_FEATURE)
    707707    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)));
    709709#endif
    710710    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)));
    712712    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)));
    714714#if ENABLE(TEST_FEATURE)
    715715    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)));
    717717#endif
    718718}
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp

    r292118 r292899  
    25292529    if (hasDisabledRuntimeProperties && structure()->isDictionary())
    25302530        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);
    25332533    putDirect(vm, vm.propertyNames->iteratorSymbol, globalObject()->arrayPrototype()->getDirect(vm, vm.propertyNames->builtinNames().valuesPrivateName()), static_cast<unsigned>(JSC::PropertyAttribute::DontEnum));
    25342534    addValueIterableMethods(*globalObject(), *this);
  • trunk/Source/WebCore/html/HTMLMediaElement.cpp

    r292878 r292899  
    119119#include "VideoTrackList.h"
    120120#include "VideoTrackPrivate.h"
     121#include "WebCoreJSClientData.h"
    121122#include <JavaScriptCore/ScriptObject.h>
    122123#include <JavaScriptCore/Uint8Array.h>
     
    46094610        return JSC::jsNull();
    46104611
    4611     JSC::Identifier controllerID = JSC::Identifier::fromString(vm, "controller"_s);
     4612    JSC::Identifier controllerID = webCoreBuiltinNames(vm).controllerPublicName();
    46124613    JSC::JSValue controllerJSWrapper = controlsHostJSWrapperObject->get(&lexicalGlobalObject, controllerID);
    46134614    RETURN_IF_EXCEPTION(scope, JSC::jsNull());
     
    77597760            return false;
    77607761
    7761         auto controller = JSC::Identifier::fromString(vm, "controller"_s);
     7762        auto controller = webCoreBuiltinNames(vm).controllerPublicName();
    77627763
    77637764        ASSERT(!controllerObject->hasProperty(&lexicalGlobalObject, controller));
  • trunk/Source/WebCore/testing/Internals.cpp

    r292859 r292899  
    50685068JSValue Internals::cloneArrayBuffer(JSC::JSGlobalObject& lexicalGlobalObject, JSValue buffer, JSValue srcByteOffset, JSValue srcLength)
    50695069{
    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();
    50735072    JSValue value;
    50745073    PropertySlot propertySlot(value, PropertySlot::InternalMethodType::Get);
  • trunk/Source/WebCore/workers/WorkerOrWorkletScriptController.cpp

    r292799 r292899  
    306306            if (errorValue.isObject()) {
    307307                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())) {
    309309                    // This is host propagated error in the module loader pipeline.
    310310                    switch (static_cast<ModuleFetchFailureKind>(failureKindValue.asInt32())) {
     
    481481            if (errorValue.isObject()) {
    482482                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())) {
    484484                    auto catchScope = DECLARE_CATCH_SCOPE(vm);
    485485                    String message = retrieveErrorMessageWithoutName(*globalObject, vm, object, catchScope);
Note: See TracChangeset for help on using the changeset viewer.