[WebIDL] Remove GetterMayThrowException
authorweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Sep 2017 19:16:14 +0000 (19:16 +0000)
committerweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Sep 2017 19:16:14 +0000 (19:16 +0000)
commit9205e72c8c06ff9a3d260f5792ba0c75e61addfb
treef519cc4bc916a7554a43d79385ce5e06cde55c0b
parent3b78ca520cb6d8b3ae7b05cf5383bcabfb6b52c7
[WebIDL] Remove GetterMayThrowException
https://bugs.webkit.org/show_bug.cgi?id=177422

Reviewed by Youenn Fablet.

* bindings/js/JSDOMConvertBase.h:
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

    Add overloads of toJS and toJSNewlyCreated that take ThrowScopes and a value that
    is not an ExceptionOr (keeping the existing overloads that take an ExceptionOr).
    This allows NativeToJSValue to not need to know of a conversion can throw, as the
    c++ type system will now make the determination for it.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateSerializerDefinition):
(NativeToJSValueUsingReferences):
(NativeToJSValueUsingPointers):
(NativeToJSValue):

    Always assume an exception can be thrown for attributes now that the converters will
    do the right thing based on whether the value is an ExceptionOr or not. Also, remove
    $suppressExceptionCheck and $excludeNullability, they were never being set.

* bindings/scripts/IDLAttributes.json:

    Remove GetterMayThrowException from the list of supported extended attributes.

* Modules/indexeddb/IDBRequest.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/webdatabase/SQLResultSet.idl:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/TestTypedefs.idl:
* dom/Document.idl:
* html/HTMLInputElement.idl:
* page/DOMWindow.idl:
* page/History.idl:
* svg/SVGLength.idl:
* xml/XMLHttpRequest.idl:
* xml/XPathResult.idl:

    Remove GetterMayThrowException extended attribute from IDL files.

* bindings/scripts/test/JS/JSMapLike.cpp:
* bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCEReactions.cpp:
* bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
* bindings/scripts/test/JS/JSTestCallTracer.cpp:
* bindings/scripts/test/JS/JSTestDOMJIT.cpp:
* bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
* bindings/scripts/test/JS/JSTestSerialization.cpp:
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:

    Update test results.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222454 268f45cc-cd09-0410-ab3c-d52691b4dbfc
42 files changed:
Source/WebCore/ChangeLog
Source/WebCore/Modules/indexeddb/IDBRequest.idl
Source/WebCore/Modules/mediasource/SourceBuffer.idl
Source/WebCore/Modules/webdatabase/SQLResultSet.idl
Source/WebCore/bindings/js/JSDOMConvertBase.h
Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
Source/WebCore/bindings/scripts/IDLAttributes.json
Source/WebCore/bindings/scripts/test/JS/JSMapLike.cpp
Source/WebCore/bindings/scripts/test/JS/JSReadOnlyMapLike.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestCEReactions.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestCallTracer.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestDOMJIT.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestEnabledBySetting.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestSerialization.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInherit.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp
Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp
Source/WebCore/bindings/scripts/test/TestObj.idl
Source/WebCore/bindings/scripts/test/TestTypedefs.idl
Source/WebCore/dom/Document.idl
Source/WebCore/html/HTMLInputElement.idl
Source/WebCore/page/DOMWindow.idl
Source/WebCore/page/History.idl
Source/WebCore/svg/SVGLength.idl
Source/WebCore/xml/XMLHttpRequest.idl
Source/WebCore/xml/XPathResult.idl