Changeset 270115 in webkit


Ignore:
Timestamp:
Nov 20, 2020 7:45:47 AM (3 years ago)
Author:
don.olmstead@sony.com
Message:

Use final in generated callback code
https://bugs.webkit.org/show_bug.cgi?id=219169

Reviewed by Darin Adler.

Generated callbacks descend from ContextDestructionObserver and are final. The
scriptExecutionContext method is not virtual so adding override errors. Remove the virtual
for that case and mark the destructor as final.

Regenerated bindings through run-bindings-tests.

  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/test/JS/JSTestCallbackFunction.h:
  • bindings/scripts/test/JS/JSTestCallbackFunctionRethrow.h:
  • bindings/scripts/test/JS/JSTestCallbackFunctionWithThisObject.h:
  • bindings/scripts/test/JS/JSTestCallbackFunctionWithTypedefs.h:
  • bindings/scripts/test/JS/JSTestCallbackInterface.h:
  • bindings/scripts/test/JS/JSTestVoidCallbackFunction.h:
Location:
trunk/Source/WebCore
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r270114 r270115  
     12020-11-20  Don Olmstead  <don.olmstead@sony.com>
     2
     3        Use final in generated callback code
     4        https://bugs.webkit.org/show_bug.cgi?id=219169
     5
     6        Reviewed by Darin Adler.
     7
     8        Generated callbacks descend from ContextDestructionObserver and are final. The
     9        scriptExecutionContext method is not virtual so adding override errors. Remove the virtual
     10        for that case and mark the destructor as final.
     11
     12        Regenerated bindings through run-bindings-tests.
     13
     14        * bindings/scripts/CodeGeneratorJS.pm:
     15        * bindings/scripts/test/JS/JSTestCallbackFunction.h:
     16        * bindings/scripts/test/JS/JSTestCallbackFunctionRethrow.h:
     17        * bindings/scripts/test/JS/JSTestCallbackFunctionWithThisObject.h:
     18        * bindings/scripts/test/JS/JSTestCallbackFunctionWithTypedefs.h:
     19        * bindings/scripts/test/JS/JSTestCallbackInterface.h:
     20        * bindings/scripts/test/JS/JSTestVoidCallbackFunction.h:
     21
    1222020-11-20  Zalan Bujtas  <zalan@apple.com>
    223
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r270042 r270115  
    64786478    push(@$contentRef, "    }\n\n");
    64796479
    6480     push(@$contentRef, "    virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }\n\n");
    6481 
    6482     push(@$contentRef, "    virtual ~$className();\n");
     6480    push(@$contentRef, "    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }\n\n");
     6481
     6482    push(@$contentRef, "    ~$className() final;\n");
    64836483
    64846484    push(@$contentRef, "    ${callbackDataType}* callbackData() { return m_data; }\n");
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunction.h

    r221908 r270115  
    3535    }
    3636
    37     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     37    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    3838
    39     virtual ~JSTestCallbackFunction();
     39    ~JSTestCallbackFunction() final;
    4040    JSCallbackDataStrong* callbackData() { return m_data; }
    4141
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionRethrow.h

    r221908 r270115  
    3535    }
    3636
    37     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     37    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    3838
    39     virtual ~JSTestCallbackFunctionRethrow();
     39    ~JSTestCallbackFunctionRethrow() final;
    4040    JSCallbackDataStrong* callbackData() { return m_data; }
    4141
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionWithThisObject.h

    r266311 r270115  
    3535    }
    3636
    37     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     37    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    3838
    39     virtual ~JSTestCallbackFunctionWithThisObject();
     39    ~JSTestCallbackFunctionWithThisObject() final;
    4040    JSCallbackDataStrong* callbackData() { return m_data; }
    4141
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionWithTypedefs.h

    r266311 r270115  
    3535    }
    3636
    37     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     37    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    3838
    39     virtual ~JSTestCallbackFunctionWithTypedefs();
     39    ~JSTestCallbackFunctionWithTypedefs() final;
    4040    JSCallbackDataStrong* callbackData() { return m_data; }
    4141
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCallbackInterface.h

    r266311 r270115  
    3939    }
    4040
    41     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     41    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    4242
    43     virtual ~JSTestCallbackInterface();
     43    ~JSTestCallbackInterface() final;
    4444    JSCallbackDataStrong* callbackData() { return m_data; }
    4545    static JSC::JSValue getConstructor(JSC::VM&, const JSC::JSGlobalObject*);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestVoidCallbackFunction.h

    r266311 r270115  
    3737    }
    3838
    39     virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
     39    ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
    4040
    41     virtual ~JSTestVoidCallbackFunction();
     41    ~JSTestVoidCallbackFunction() final;
    4242    JSCallbackDataStrong* callbackData() { return m_data; }
    4343
Note: See TracChangeset for help on using the changeset viewer.