Web Replay: remove some unused code
authorbburg@apple.com <bburg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2017 18:24:26 +0000 (18:24 +0000)
committerbburg@apple.com <bburg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 10 Jul 2017 18:24:26 +0000 (18:24 +0000)
https://bugs.webkit.org/show_bug.cgi?id=173903

Rubber-stamped by Joseph Pecoraro.

.:

* ManualTests/inspector/replay-keyboard-events.html: Removed.
* ManualTests/inspector/replay-mouse-events.html: Removed.
* ManualTests/inspector/replay-wheel-events.html: Removed.
* ManualTests/inspector/replay-window-navigator-basic.html: Removed.
* ManualTests/inspector/replay-window-screen.html: Removed.
* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* JavaScriptCore.xcodeproj/project.pbxproj:
* inspector/protocol/Replay.json: Removed.
* replay/EmptyInputCursor.h: Removed.
* replay/EncodedValue.cpp: Removed.
* replay/EncodedValue.h: Removed.
* replay/InputCursor.h: Removed.
* replay/JSInputs.json: Removed.
* replay/NondeterministicInput.h: Removed.
* replay/scripts/CodeGeneratorReplayInputs.py: Removed.
* replay/scripts/CodeGeneratorReplayInputsTemplates.py: Removed.
* replay/scripts/tests/expected/fail-on-c-style-enum-no-storage.json-error: Removed.
* replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error: Removed.
* replay/scripts/tests/expected/fail-on-duplicate-input-names.json-error: Removed.
* replay/scripts/tests/expected/fail-on-duplicate-type-names.json-error: Removed.
* replay/scripts/tests/expected/fail-on-enum-type-missing-values.json-error: Removed.
* replay/scripts/tests/expected/fail-on-missing-input-member-name.json-error: Removed.
* replay/scripts/tests/expected/fail-on-missing-input-name.json-error: Removed.
* replay/scripts/tests/expected/fail-on-missing-input-queue.json-error: Removed.
* replay/scripts/tests/expected/fail-on-missing-type-mode.json-error: Removed.
* replay/scripts/tests/expected/fail-on-missing-type-name.json-error: Removed.
* replay/scripts/tests/expected/fail-on-unknown-input-queue.json-error: Removed.
* replay/scripts/tests/expected/fail-on-unknown-member-type.json-error: Removed.
* replay/scripts/tests/expected/fail-on-unknown-type-mode.json-error: Removed.
* replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-event-loop-shape-types.json-error: Removed.
* replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp: Removed.
* replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h: Removed.
* replay/scripts/tests/fail-on-c-style-enum-no-storage.json: Removed.
* replay/scripts/tests/fail-on-duplicate-enum-type.json: Removed.
* replay/scripts/tests/fail-on-duplicate-input-names.json: Removed.
* replay/scripts/tests/fail-on-duplicate-type-names.json: Removed.
* replay/scripts/tests/fail-on-enum-type-missing-values.json: Removed.
* replay/scripts/tests/fail-on-missing-input-member-name.json: Removed.
* replay/scripts/tests/fail-on-missing-input-name.json: Removed.
* replay/scripts/tests/fail-on-missing-input-queue.json: Removed.
* replay/scripts/tests/fail-on-missing-type-mode.json: Removed.
* replay/scripts/tests/fail-on-missing-type-name.json: Removed.
* replay/scripts/tests/fail-on-unknown-input-queue.json: Removed.
* replay/scripts/tests/fail-on-unknown-member-type.json: Removed.
* replay/scripts/tests/fail-on-unknown-type-mode.json: Removed.
* replay/scripts/tests/generate-enum-encoding-helpers-with-guarded-values.json: Removed.
* replay/scripts/tests/generate-enum-encoding-helpers.json: Removed.
* replay/scripts/tests/generate-enum-with-guard.json: Removed.
* replay/scripts/tests/generate-enums-with-same-base-name.json: Removed.
* replay/scripts/tests/generate-event-loop-shape-types.json: Removed.
* replay/scripts/tests/generate-input-with-guard.json: Removed.
* replay/scripts/tests/generate-input-with-vector-members.json: Removed.
* replay/scripts/tests/generate-inputs-with-flags.json: Removed.
* replay/scripts/tests/generate-memoized-type-modes.json: Removed.
* runtime/DateConstructor.cpp:
(JSC::constructDate):
(JSC::dateNow):
(JSC::deterministicCurrentTime): Deleted.
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::JSGlobalObject):
(JSC::JSGlobalObject::setInputCursor): Deleted.
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::inputCursor): Deleted.

Source/WebCore:

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* PlatformMac.cmake:
* WebCore.xcodeproj/project.pbxproj:
* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::lastModified):
(WebCore::Document::inputCursor): Deleted.
(WebCore::Document::setInputCursor): Deleted.
* dom/Document.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willDispatchEventImpl):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
(WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::sessionCreatedImpl): Deleted.
(WebCore::InspectorInstrumentation::sessionLoadedImpl): Deleted.
(WebCore::InspectorInstrumentation::sessionModifiedImpl): Deleted.
(WebCore::InspectorInstrumentation::segmentCreatedImpl): Deleted.
(WebCore::InspectorInstrumentation::segmentCompletedImpl): Deleted.
(WebCore::InspectorInstrumentation::segmentLoadedImpl): Deleted.
(WebCore::InspectorInstrumentation::segmentUnloadedImpl): Deleted.
(WebCore::InspectorInstrumentation::captureStartedImpl): Deleted.
(WebCore::InspectorInstrumentation::captureStoppedImpl): Deleted.
(WebCore::InspectorInstrumentation::playbackStartedImpl): Deleted.
(WebCore::InspectorInstrumentation::playbackPausedImpl): Deleted.
(WebCore::InspectorInstrumentation::playbackHitPositionImpl): Deleted.
(WebCore::InspectorInstrumentation::playbackFinishedImpl): Deleted.
(WebCore::InspectorInstrumentation::replayAgentEnabled): Deleted.
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::sessionCreated): Deleted.
(WebCore::InspectorInstrumentation::sessionLoaded): Deleted.
(WebCore::InspectorInstrumentation::sessionModified): Deleted.
(WebCore::InspectorInstrumentation::segmentCreated): Deleted.
(WebCore::InspectorInstrumentation::segmentCompleted): Deleted.
(WebCore::InspectorInstrumentation::segmentLoaded): Deleted.
(WebCore::InspectorInstrumentation::segmentUnloaded): Deleted.
(WebCore::InspectorInstrumentation::captureStarted): Deleted.
(WebCore::InspectorInstrumentation::captureStopped): Deleted.
(WebCore::InspectorInstrumentation::playbackStarted): Deleted.
(WebCore::InspectorInstrumentation::playbackPaused): Deleted.
(WebCore::InspectorInstrumentation::playbackFinished): Deleted.
(WebCore::InspectorInstrumentation::playbackHitPosition): Deleted.
* inspector/InspectorReplayAgent.cpp: Removed.
* inspector/InspectorReplayAgent.h: Removed.
* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::reset):
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::inspectorReplayAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorReplayAgent): Deleted.
* page/EventHandler.h:
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::replayController): Deleted.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::synchronousScrollingReasons):
(WebCore::ScrollingCoordinator::replaySessionStateDidChange): Deleted.
* page/scrolling/ScrollingCoordinator.h:
* platform/Logging.h:
* plugins/DOMMimeTypeArray.cpp:
(WebCore::DOMMimeTypeArray::getPluginData):
* plugins/DOMPluginArray.cpp:
(WebCore::DOMPluginArray::pluginData):
* replay/AllReplayInputs.h: Removed.
* replay/CapturingInputCursor.cpp: Removed.
* replay/CapturingInputCursor.h: Removed.
* replay/EventLoopInput.cpp: Removed.
* replay/EventLoopInput.h: Removed.
* replay/EventLoopInputDispatcher.cpp: Removed.
* replay/EventLoopInputDispatcher.h: Removed.
* replay/FunctorInputCursor.h: Removed.
* replay/MemoizedDOMResult.cpp: Removed.
* replay/MemoizedDOMResult.h: Removed.
* replay/ReplayController.cpp: Removed.
* replay/ReplayController.h: Removed.
* replay/ReplayInputCreationMethods.cpp: Removed.
* replay/ReplayInputDispatchMethods.cpp: Removed.
* replay/ReplaySession.cpp: Removed.
* replay/ReplaySession.h: Removed.
* replay/ReplaySessionSegment.cpp: Removed.
* replay/ReplaySessionSegment.h: Removed.
* replay/ReplayingInputCursor.cpp: Removed.
* replay/ReplayingInputCursor.h: Removed.
* replay/SegmentedInputStorage.cpp: Removed.
* replay/SegmentedInputStorage.h: Removed.
* replay/SerializationMethods.cpp: Removed.
* replay/SerializationMethods.h: Removed.
* replay/WebInputs.json: Removed.

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebInspectorUI:

* .eslintrc:
* UserInterface/Base/Main.js:
(WebInspector.loaded):
* UserInterface/Controllers/DashboardManager.js:
(WebInspector.DashboardManager):
* UserInterface/Controllers/ReplayManager.js: Removed.
* UserInterface/Images/ReplayPauseButton.svg: Removed.
* UserInterface/Images/ReplayPlayButton.svg: Removed.
* UserInterface/Images/ReplayRecordingButton.svg: Removed.
* UserInterface/Images/gtk/ReplayPauseButton.svg: Removed.
* UserInterface/Images/gtk/ReplayPlayButton.svg: Removed.
* UserInterface/Images/gtk/ReplayRecordingButton.svg: Removed.
* UserInterface/Main.html:
* UserInterface/Models/ReplayDashboard.js: Removed.
* UserInterface/Models/ReplaySession.js: Removed.
* UserInterface/Models/ReplaySessionSegment.js: Removed.
* UserInterface/Protocol/ReplayObserver.js: Removed.
* UserInterface/Test.html:
* UserInterface/Test/Test.js:
(WebInspector.loaded):
* UserInterface/Views/DashboardView.js:
(WebInspector.DashboardView.create):
* UserInterface/Views/ReplayDashboardView.css: Removed.
* UserInterface/Views/ReplayDashboardView.js: Removed.
* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
(WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::tryClose):
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::stopLoadingFrame):
(WebKit::WebPage::stopLoading):
(WebKit::WebPage::reload):
(WebKit::WebPage::contextMenuAtPointInWindow):
(WebKit::handleContextMenuEvent):
(WebKit::handleMouseEvent):
(WebKit::handleWheelEvent):
(WebKit::handleKeyEvent):
(WebKit::WebPage::scroll):
(WebKit::WebPage::logicalScroll):

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* Scripts/run-input-generator-tests: Removed.
* Scripts/webkitpy/replay/__init__.py: Removed.
* Scripts/webkitpy/replay/main.py: Removed.

LayoutTests:

* inspector/replay/javascript-date-now-expected.txt: Removed.
* inspector/replay/javascript-date-now.html: Removed.
* inspector/replay/javascript-random-seed-expected.txt: Removed.
* inspector/replay/javascript-random-seed.html: Removed.
* inspector/replay/window-navigator-plugins-memoized-expected.txt: Removed.
* inspector/replay/window-navigator-plugins-memoized.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@219301 268f45cc-cd09-0410-ab3c-d52691b4dbfc

177 files changed:
ChangeLog
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value-expected.txt [deleted file]
LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value.html [deleted file]
LayoutTests/http/tests/inspector/replay/replay-test.js [deleted file]
LayoutTests/inspector/replay/javascript-date-now-expected.txt [deleted file]
LayoutTests/inspector/replay/javascript-date-now.html [deleted file]
LayoutTests/inspector/replay/javascript-random-seed-expected.txt [deleted file]
LayoutTests/inspector/replay/javascript-random-seed.html [deleted file]
LayoutTests/inspector/replay/window-navigator-plugins-memoized-expected.txt [deleted file]
LayoutTests/inspector/replay/window-navigator-plugins-memoized.html [deleted file]
ManualTests/inspector/replay-keyboard-events.html [deleted file]
ManualTests/inspector/replay-mouse-events.html [deleted file]
ManualTests/inspector/replay-wheel-events.html [deleted file]
ManualTests/inspector/replay-window-navigator-basic.html [deleted file]
ManualTests/inspector/replay-window-screen.html [deleted file]
Source/JavaScriptCore/CMakeLists.txt
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/JavaScriptCore/DerivedSources.make
Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
Source/JavaScriptCore/inspector/protocol/Replay.json [deleted file]
Source/JavaScriptCore/replay/EmptyInputCursor.h [deleted file]
Source/JavaScriptCore/replay/EncodedValue.cpp [deleted file]
Source/JavaScriptCore/replay/EncodedValue.h [deleted file]
Source/JavaScriptCore/replay/InputCursor.h [deleted file]
Source/JavaScriptCore/replay/JSInputs.json [deleted file]
Source/JavaScriptCore/replay/NondeterministicInput.h [deleted file]
Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py [deleted file]
Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputsTemplates.py [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-c-style-enum-no-storage.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-input-names.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-type-names.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-enum-type-missing-values.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-member-name.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-name.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-queue.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-mode.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-name.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-input-queue.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-member-type.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-type-mode.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-event-loop-shape-types.json-error [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp [deleted file]
Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-c-style-enum-no-storage.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-enum-type.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-input-names.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-type-names.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-enum-type-missing-values.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-member-name.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-name.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-queue.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-mode.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-name.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-input-queue.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-member-type.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-type-mode.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers-with-guarded-values.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-enum-with-guard.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-enums-with-same-base-name.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-event-loop-shape-types.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-input-with-guard.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-input-with-vector-members.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-inputs-with-flags.json [deleted file]
Source/JavaScriptCore/replay/scripts/tests/generate-memoized-type-modes.json [deleted file]
Source/JavaScriptCore/runtime/DateConstructor.cpp
Source/JavaScriptCore/runtime/JSGlobalObject.cpp
Source/JavaScriptCore/runtime/JSGlobalObject.h
Source/WTF/ChangeLog
Source/WTF/wtf/FeatureDefines.h
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/DerivedSources.make
Source/WebCore/ForwardingHeaders/replay/EmptyInputCursor.h [deleted file]
Source/WebCore/ForwardingHeaders/replay/EncodedValue.h [deleted file]
Source/WebCore/ForwardingHeaders/replay/InputCursor.h [deleted file]
Source/WebCore/ForwardingHeaders/replay/NondeterministicInput.h [deleted file]
Source/WebCore/PAL/ChangeLog
Source/WebCore/PAL/Configurations/FeatureDefines.xcconfig
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/dom/Document.cpp
Source/WebCore/dom/Document.h
Source/WebCore/inspector/InspectorController.cpp
Source/WebCore/inspector/InspectorInstrumentation.cpp
Source/WebCore/inspector/InspectorInstrumentation.h
Source/WebCore/inspector/InspectorReplayAgent.cpp [deleted file]
Source/WebCore/inspector/InspectorReplayAgent.h [deleted file]
Source/WebCore/inspector/InstrumentingAgents.cpp
Source/WebCore/inspector/InstrumentingAgents.h
Source/WebCore/page/Page.cpp
Source/WebCore/page/Page.h
Source/WebCore/page/scrolling/ScrollingCoordinator.cpp
Source/WebCore/page/scrolling/ScrollingCoordinator.h
Source/WebCore/platform/Logging.h
Source/WebCore/plugins/DOMMimeTypeArray.cpp
Source/WebCore/plugins/DOMPluginArray.cpp
Source/WebCore/replay/AllReplayInputs.h [deleted file]
Source/WebCore/replay/CapturingInputCursor.cpp [deleted file]
Source/WebCore/replay/CapturingInputCursor.h [deleted file]
Source/WebCore/replay/EventLoopInput.cpp [deleted file]
Source/WebCore/replay/EventLoopInput.h [deleted file]
Source/WebCore/replay/EventLoopInputDispatcher.cpp [deleted file]
Source/WebCore/replay/EventLoopInputDispatcher.h [deleted file]
Source/WebCore/replay/FunctorInputCursor.h [deleted file]
Source/WebCore/replay/MemoizedDOMResult.cpp [deleted file]
Source/WebCore/replay/MemoizedDOMResult.h [deleted file]
Source/WebCore/replay/ReplayController.cpp [deleted file]
Source/WebCore/replay/ReplayController.h [deleted file]
Source/WebCore/replay/ReplayInputCreationMethods.cpp [deleted file]
Source/WebCore/replay/ReplayInputDispatchMethods.cpp [deleted file]
Source/WebCore/replay/ReplaySession.cpp [deleted file]
Source/WebCore/replay/ReplaySession.h [deleted file]
Source/WebCore/replay/ReplaySessionSegment.cpp [deleted file]
Source/WebCore/replay/ReplaySessionSegment.h [deleted file]
Source/WebCore/replay/ReplayingInputCursor.cpp [deleted file]
Source/WebCore/replay/ReplayingInputCursor.h [deleted file]
Source/WebCore/replay/SegmentedInputStorage.cpp [deleted file]
Source/WebCore/replay/SegmentedInputStorage.h [deleted file]
Source/WebCore/replay/SerializationMethods.cpp [deleted file]
Source/WebCore/replay/SerializationMethods.h [deleted file]
Source/WebCore/replay/UserInputBridge.cpp
Source/WebCore/replay/UserInputBridge.h
Source/WebCore/replay/WebInputs.json [deleted file]
Source/WebInspectorUI/.eslintrc
Source/WebInspectorUI/ChangeLog
Source/WebInspectorUI/UserInterface/Base/Main.js
Source/WebInspectorUI/UserInterface/Controllers/DashboardManager.js
Source/WebInspectorUI/UserInterface/Controllers/ReplayManager.js [deleted file]
Source/WebInspectorUI/UserInterface/Images/ReplayPauseButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Images/ReplayPlayButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Images/ReplayRecordingButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Images/gtk/ReplayPauseButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Images/gtk/ReplayPlayButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Images/gtk/ReplayRecordingButton.svg [deleted file]
Source/WebInspectorUI/UserInterface/Main.html
Source/WebInspectorUI/UserInterface/Models/ReplayDashboard.js [deleted file]
Source/WebInspectorUI/UserInterface/Models/ReplaySession.js [deleted file]
Source/WebInspectorUI/UserInterface/Models/ReplaySessionSegment.js [deleted file]
Source/WebInspectorUI/UserInterface/Protocol/ReplayObserver.js [deleted file]
Source/WebInspectorUI/UserInterface/Test.html
Source/WebInspectorUI/UserInterface/Test/Test.js
Source/WebInspectorUI/UserInterface/Views/DashboardView.js
Source/WebInspectorUI/UserInterface/Views/ReplayDashboardView.css [deleted file]
Source/WebInspectorUI/UserInterface/Views/ReplayDashboardView.js [deleted file]
Source/WebInspectorUI/UserInterface/Views/TimelineRecordingContentView.js
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
Source/WebKit2/ChangeLog
Source/WebKit2/Configurations/FeatureDefines.xcconfig
Source/cmake/OptionsMac.cmake
Source/cmake/WebKitFeatures.cmake
Tools/ChangeLog
Tools/Scripts/run-input-generator-tests [deleted file]
Tools/Scripts/webkitperl/FeatureList.pm
Tools/Scripts/webkitpy/common/config/watchlist
Tools/Scripts/webkitpy/replay/__init__.py [deleted file]
Tools/Scripts/webkitpy/replay/main.py [deleted file]
Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig

index 5aa9103..7c371b8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * ManualTests/inspector/replay-keyboard-events.html: Removed.
+        * ManualTests/inspector/replay-mouse-events.html: Removed.
+        * ManualTests/inspector/replay-wheel-events.html: Removed.
+        * ManualTests/inspector/replay-window-navigator-basic.html: Removed.
+        * ManualTests/inspector/replay-window-screen.html: Removed.
+        * Source/cmake/OptionsMac.cmake:
+        * Source/cmake/WebKitFeatures.cmake:
+
 2017-07-10  Carlos Garcia Campos  <cgarcia@igalia.com>
 
         Move make-js-file-arrays.py from WebCore to JavaScriptCore
index 5c8ee71..35247d8 100644 (file)
@@ -1,3 +1,17 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * inspector/replay/javascript-date-now-expected.txt: Removed.
+        * inspector/replay/javascript-date-now.html: Removed.
+        * inspector/replay/javascript-random-seed-expected.txt: Removed.
+        * inspector/replay/javascript-random-seed.html: Removed.
+        * inspector/replay/window-navigator-plugins-memoized-expected.txt: Removed.
+        * inspector/replay/window-navigator-plugins-memoized.html: Removed.
+
 2017-07-10  Matt Lewis  <jlewis3@apple.com>
 
         Skipped http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html.
index d83bd79..ac34cc9 100644 (file)
@@ -181,7 +181,6 @@ webkit.org/b/129057 media/controls-styling-strict.html [ Pass Failure ]
 # These tests will be rewritten, just skip them until that time.
 webkit.org/b/148036 http/tests/inspector/css/ [ Skip ]
 webkit.org/b/148036 http/tests/inspector/page/ [ Skip ]
-webkit.org/b/148036 http/tests/inspector/replay/ [ Skip ]
 
 # Debugger stepping tests can timeout if they run slowly due to a short timer scheduled in the frontend:
 webkit.org/b/161951 [ Debug ] inspector/debugger/stepping [ Skip ]
@@ -198,17 +197,12 @@ webkit.org/b/134982 inspector/debugger/setBreakpoint-dfg-and-modify-local.html [
 webkit.org/b/142208 inspector/timeline/debugger-paused-while-recording.html [ Skip ]
 webkit.org/b/142208 inspector/timeline/exception-in-injected-script-while-recording.html [ Skip ]
 
-webkit.org/b/137130 inspector/replay [ Skip ]
-
 # This test is fast enough in release but quite slow in debug builds.
 [ Debug ] inspector/debugger/debugger-stack-overflow.html [ Skip ]
 
 # Debugger stepping tests can timeout if they run slowly due to a short timer scheduled in the frontend.
 webkit.org/b/161951 [ Debug ] inspector/debugger/paused-scopes.html [ Skip ]
 
-# Doesn't work yet, relies on network replay functionality (webkit.org/b/130728, webkit.org/b/129391)
-webkit.org/b/131318 http/tests/inspector/replay/document-last-modified-fallback-value.html [ Skip ]
-
 # Collecting region's children in a named flow not supported yet
 webkit.org/b/74144 fast/regions/flow-body-in-html.html [ Skip ]
 webkit.org/b/74144 fast/regions/universal-selector-children-to-the-same-region.html [ Skip ]
diff --git a/LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value-expected.txt b/LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value-expected.txt
deleted file mode 100644 (file)
index 357a333..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Tests that we can capture and replay nondeterminism in fallback values for document.lastModified
-
-Waiting for test page to finish its initial load...
-Test page initial load done.
-Waiting for capturing to start...
-Capturing has started.
-Waiting to capture initial navigation...
-Initial navigation captured. Dumping state....
-Capture stopped, now starting replay to completion...
-Playback has started.
-Waiting to replay initial navigation...
-Initial navigation replayed. Dumping state...
-PASS: Nondeterministic state should not differ during capture and replay.
diff --git a/LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value.html b/LayoutTests/http/tests/inspector/replay/document-last-modified-fallback-value.html
deleted file mode 100644 (file)
index 78949c9..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<html>
-<head>
-<script type="text/javascript" src="../resources/inspector-test.js"></script>
-<script type="text/javascript" src="./replay-test.js"></script>
-<script>
-
-function appendFrameWithLastModifiedDate(text) {
-    document.write('<iframe src="../resources/last-modified.php?date=' + escape(text) + '"></iframe>');
-}
-
-appendFrameWithLastModifiedDate('');
-
-function dumpNondeterministicState()
-{
-    return Date.parse(frames[0].document.body.textContent);
-}
-
-function test()
-{
-    function statesAreEqual(a, b)
-    {
-        return a === b;
-    }
-
-    InspectorTest.Replay.runSingleSegmentRefTest(statesAreEqual);
-}
-
-</script>
-</head>
-<body onload="runTest()">
-<p>Tests that we can capture and replay nondeterminism in fallback values for document.lastModified</p>
-</body>
-</html>
diff --git a/LayoutTests/http/tests/inspector/replay/replay-test.js b/LayoutTests/http/tests/inspector/replay/replay-test.js
deleted file mode 100644 (file)
index 6e2357a..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-TestPage.registerInitializer(function() {
-
-InspectorTest.Replay = {};
-
-InspectorTest.Replay.runSingleSegmentRefTest = function(stateComparator)
-{
-    var stateDuringCapturing = null;
-    var stateDuringReplaying = null;
-
-    InspectorTest.reloadPage({ignoreCache: true})
-    .then(function() {
-        return new Promise(function waitForMainResourceBeforeStarting(resolve, reject) {
-            InspectorTest.eventDispatcher.addEventListener(InspectorTest.EventDispatcher.Event.TestPageDidLoad, resolve);
-            InspectorTest.log("Waiting for test page to finish its initial load...");
-        });
-    })
-    .then(function() {
-        InspectorTest.log("Test page initial load done.");
-        return RuntimeAgent.evaluate.promise("if (typeof \"setupPreCapture\" === \"function\") setupPreCapture()");
-    })
-    .then(function() {
-        return new Promise(function startCapturing(resolve, reject) {
-            InspectorTest.log("Waiting for capturing to start...");
-            WebInspector.replayManager.startCapturing();
-            WebInspector.replayManager.addEventListener(WebInspector.ReplayManager.Event.CaptureStarted, resolve);
-        });
-    })
-    .then(function() {
-        InspectorTest.log("Capturing has started.");
-        return new Promise(function waitToCaptureInitialNavigation(resolve, reject) {
-            InspectorTest.log("Waiting to capture initial navigation...");
-            InspectorTest.eventDispatcher.addEventListener(InspectorTest.EventDispatcher.Event.TestPageDidLoad, resolve);
-        });
-    })
-    .then(function() {
-        InspectorTest.log("Initial navigation captured. Dumping state....");
-        return RuntimeAgent.evaluate.promise("dumpNondeterministicState()");
-    })
-    .then(function(payload) {
-        stateDuringCapturing = payload.result.value;
-        return new Promise(function stopCapturing(resolve, reject) {
-            WebInspector.replayManager.stopCapturing();
-            WebInspector.replayManager.addEventListener(WebInspector.ReplayManager.Event.CaptureStopped, resolve);
-        });
-    })
-    .then(function() {
-        return RuntimeAgent.evaluate.promise("if (typeof \"setupPreCapture\" === \"function\") setupPreReplay()");
-    })
-    .then(function() {
-        InspectorTest.log("Capture stopped, now starting replay to completion...")
-        return new Promise(function startPlayback(resolve, reject) {
-            WebInspector.replayManager.replayToCompletion();
-            WebInspector.replayManager.addEventListener(WebInspector.ReplayManager.Event.PlaybackStarted, resolve);
-        });
-    })
-    .then(function() {
-        InspectorTest.log("Playback has started.");
-        return new Promise(function waitForMainResourceWhenReplaying(resolve, reject) {
-            InspectorTest.log("Waiting to replay initial navigation...");
-            InspectorTest.eventDispatcher.addEventListener(InspectorTest.EventDispatcher.Event.TestPageDidLoad, resolve);
-        });
-    })
-    .then(function() {
-        InspectorTest.log("Initial navigation replayed. Dumping state...");
-        return RuntimeAgent.evaluate.promise("dumpNondeterministicState()");
-    })
-    .then(function(payload) {
-        stateDuringReplaying = payload.result.value;
-        return new Promise(function waitForReplayingToFinish(resolve, reject) {
-            WebInspector.replayManager.addEventListener(WebInspector.ReplayManager.Event.PlaybackFinished, resolve);
-        });
-    })
-    .then(function() {
-        var statesEqual = stateDuringCapturing === stateDuringReplaying;
-        InspectorTest.expectThat(statesEqual, "Nondeterministic state should not differ during capture and replay.");
-        if (!statesEqual) {
-            InspectorTest.log("State during capturing: " + stateDuringCapturing);
-            InspectorTest.log("State during replaying: " + stateDuringReplaying);
-        }
-        InspectorTest.completeTest();
-    });
-};
-
-});
diff --git a/LayoutTests/inspector/replay/javascript-date-now-expected.txt b/LayoutTests/inspector/replay/javascript-date-now-expected.txt
deleted file mode 100644 (file)
index ca30022..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Tests that we can capture and replay nondeterminism in Date.now() and the Date constructor.
-
-Waiting for test page to finish its initial load...
-Test page initial load done.
-Waiting for capturing to start...
-Capturing has started.
-Waiting to capture initial navigation...
-Initial navigation captured. Dumping state....
-Capture stopped, now starting replay to completion...
-Playback has started.
-Waiting to replay initial navigation...
-Initial navigation replayed. Dumping state...
-PASS: Nondeterministic state should not differ during capture and replay.
-
diff --git a/LayoutTests/inspector/replay/javascript-date-now.html b/LayoutTests/inspector/replay/javascript-date-now.html
deleted file mode 100644 (file)
index 4044e71..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<html>
-<head>
-<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
-<script src="../../http/tests/inspector/replay/replay-test.js"></script>
-<script>
-
-window._times = [Date.now(), new Date().toString()];
-
-function dumpNondeterministicState()
-{
-    return window._times;
-}
-
-function test()
-{
-    function statesAreEqual(a, b)
-    {
-        if (typeof a !== "array" || typeof b !== "array")
-            return false;
-        if (a.length !== b.length)
-            return false;
-
-        for (var i = 0; i < a.length; ++i)
-            if (a[i] !== b[i])
-                return false;
-
-        return true;
-    }
-
-    InspectorTest.Replay.runSingleSegmentRefTest(statesAreEqual);
-}
-
-</script>
-</head>
-<body onload="runTest()">
-<p>Tests that we can capture and replay nondeterminism in Date.now() and the Date constructor.</p>
-</body>
-</html>
diff --git a/LayoutTests/inspector/replay/javascript-random-seed-expected.txt b/LayoutTests/inspector/replay/javascript-random-seed-expected.txt
deleted file mode 100644 (file)
index 10d7c68..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Tests that we can capture and replay nondeterminism in Math.random().
-
-Waiting for test page to finish its initial load...
-Test page initial load done.
-Waiting for capturing to start...
-Capturing has started.
-Waiting to capture initial navigation...
-Initial navigation captured. Dumping state....
-Capture stopped, now starting replay to completion...
-Playback has started.
-Waiting to replay initial navigation...
-Initial navigation replayed. Dumping state...
-PASS: Nondeterministic state should not differ during capture and replay.
-
diff --git a/LayoutTests/inspector/replay/javascript-random-seed.html b/LayoutTests/inspector/replay/javascript-random-seed.html
deleted file mode 100644 (file)
index 4456f22..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<html>
-<head>
-<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
-<script src="../../http/tests/inspector/replay/replay-test.js"></script>
-<script>
-
-window._randomNumber = Math.random();
-
-function dumpNondeterministicState()
-{
-    return window._randomNumber;
-}
-
-function test()
-{
-    function statesAreEqual(a, b)
-    {
-        return a === b;
-    }
-
-    InspectorTest.Replay.runSingleSegmentRefTest(statesAreEqual);
-}
-
-</script>
-</head>
-<body onload="runTest()">
-<p>Tests that we can capture and replay nondeterminism in Math.random().</p>
-</body>
-</html>
diff --git a/LayoutTests/inspector/replay/window-navigator-plugins-memoized-expected.txt b/LayoutTests/inspector/replay/window-navigator-plugins-memoized-expected.txt
deleted file mode 100644 (file)
index f5822ce..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Tests that we can capture and replay nondeterminism in window.navigator.plugins and window.navigator.mimeTypes.
-
- Waiting for test page to finish its initial load...
-Test page initial load done.
-Waiting for capturing to start...
-Capturing has started.
-Waiting to capture initial navigation...
-Initial navigation captured. Dumping state....
-Capture stopped, now starting replay to completion...
-Playback has started.
-Waiting to replay initial navigation...
-Initial navigation replayed. Dumping state...
-PASS: Nondeterministic state should not differ during capture and replay.
-
diff --git a/LayoutTests/inspector/replay/window-navigator-plugins-memoized.html b/LayoutTests/inspector/replay/window-navigator-plugins-memoized.html
deleted file mode 100644 (file)
index 04fc339..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-<html>
-<head>
-<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
-<script src="../../http/tests/inspector/replay/replay-test.js"></script>
-<script>
-function shallowCopy(object, properties) {
-    var copiedObject = {};
-    for (var prop of properties)
-        copiedObject[prop] = object[prop];
-
-    return copiedObject;
-}
-
-function shallowIndexOf(candidates, objectToFind, properties) {
-    if (!objectToFind    || !candidates.length)
-        return -1;
-
-    for (var i = 0; i < candidates.length; ++i) {
-        var objectCandidate = candidates[i];
-        var propIsEqual = function(prop) {
-            return objectCandidate[prop] === objectToFind[prop];
-        };
-
-        if (properties.every(propIsEqual))
-            return i;
-    }
-
-    return -1;
-}
-
-function dumpNondeterministicState()
-{
-    var mimeKeys = ["type", "suffixes", "description"];
-    var pluginKeys = ["name", "filename", "description", "length"];
-
-    var mimeTypes = [];
-    var plugins = [];
-
-    var pluginArray = window.navigator.plugins;
-    var mimesArray = window.navigator.mimeTypes;
-
-    // First gather all of the instances into an array.
-    for (var i = 0; i < pluginArray.length; ++i)
-        plugins.push(pluginArray.item(i));
-
-    for (var i = 0; i < mimesArray.length; ++i)
-        mimeTypes.push(mimesArray.item(i));
-
-    function serializePlugin(object) {
-        console.assert(object instanceof window.Plugin);
-
-        // Copy shallow properties and find indices for cross-references.
-        var data = shallowCopy(object, pluginKeys);
-        var mimeIndices = [];
-        for (var i = 0; i < object.length; ++i)
-            mimeIndices.push(shallowIndexOf(mimeTypes, object.item(i), mimeKeys));
-
-        data.mimeIndices = mimeIndices;
-        return data;
-    }
-
-    function serializeMimeType(object) {
-        console.assert(object instanceof window.MimeType);
-
-        // Copy shallow properties and find indices for cross-references.
-        var data = shallowCopy(object, mimeKeys);
-        data.pluginIndex = shallowIndexOf(plugins, object.enabledPlugin, pluginKeys);
-        return data;
-    }
-
-    return {
-        "plugins": plugins.map(serializePlugin),
-        "mimeTypes": mimeTypes.map(serializeMimeType)
-    };
-}
-
-// These functions are called in the previous main frame prior to the initial
-// navigation that begins capturing or replaying. Careful, heap state will be lost.
-function setupPreCapture() {
-    TestPage.addResult("Enabling plugins before capture.");
-    testRunner.setPluginsEnabled(false);
-}
-
-function setupPreReplay() {
-    TestPage.addResult("Disabling plugins before replay.");
-    testRunner.setPluginsEnabled(true);
-}
-
-function test()
-{
-    function statesAreEqual(a, b)
-    {
-        return a === b;
-    }
-
-    InspectorTest.Replay.runSingleSegmentRefTest(statesAreEqual);
-}
-
-</script>
-</head>
-<body onload="runTest()">
-<p>Tests that we can capture and replay nondeterminism in <tt>window.navigator.plugins<tt> and <tt>window.navigator.mimeTypes</tt>.</p>
-</body>
-</html>
diff --git a/ManualTests/inspector/replay-keyboard-events.html b/ManualTests/inspector/replay-keyboard-events.html
deleted file mode 100644 (file)
index 4dc3c4c..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<script src="./resources/crypto-md5.js"></script>
-<script type="text/javascript" language="javascript" charset="utf-8">
-    document.onkeypress = handleEvent;
-    document.onkeydown = handleEvent;
-    document.onkeyup = handleEvent;
-    window.dumpedEvents = [];
-
-    function handleEvent(event) {
-        var properties = ["type", "eventPhase", "bubbles", "cancelable", "keyIdentifier", "location", "shiftKey", "altKey", "metaKey", "altGraphKey", "keyCode", "charCode"];
-        obj = {};
-        for (var key of properties)
-            obj[key] = event[key];
-
-        dumpedEvents.push(obj);
-
-        var block = createBlock(hex_md5(JSON.stringify(obj)), event);
-        var blocksContainer = document.getElementById("blocks");
-        blocksContainer.appendChild(block);
-
-        var hashLabel = document.getElementById("hash");
-        hash.textContent = hex_md5(JSON.stringify(dumpedEvents));
-    }
-
-    function createBlock(hash, event) {
-
-        function glyphForType(type) {
-            switch (type) {
-            case "keydown": return "D";
-            case "keyup": return "U";
-            case "keypress": return "K";
-            }
-        }
-
-        var color = "#" + hash.substr(0,6);
-        var block = document.createElement("span");
-        var eventTypeLabel = document.createElement("span");
-        eventTypeLabel.className = "event-label";
-        eventTypeLabel.textContent = glyphForType(event.type);
-        block.appendChild(eventTypeLabel);
-
-        var keyLabel = document.createElement("span");
-        keyLabel.className = "key-label";
-        var codepointRegEx = /^U\+\d{4}$/;
-        keyLabel.textContent = event.keyIdentifier.match(codepointRegEx) ? String.fromCharCode(event.keyCode) : event.keyIdentifier;
-        block.appendChild(keyLabel);
-        block.style.backgroundColor = color;
-        return block;
-    }
-
-    function stateHash() {
-        return hex_md5(JSON.stringify(dumpedEvents));
-    }
-</script>
-
-<style type="text/css">
-body {
-    max-width: 800px;
-}
-#blocks {
-    display: -webkit-flex;
-    width: 600px;
-    -webkit-flex-flow: row wrap;
-}
-
-#blocks > span {
-    padding: 2px 2px;
-    border-radius: 4px;
-    margin: 2px;
-    font-size: 12px;
-    font-weight: bold;
-    font-family: sans-serif;
-    color: #fff;
-    text-align: center;
-}
-
-.event-label::before {
-    content: '(';
-}
-
-.event-label::after {
-    content: ') ';
-}
-
-.key-label {
-}
-</style>
-</head>
-<body>
-<p>This page is a manual test for capture and replay of keyboard-related events.</p>
-<p>Below, a block is created for each keyboard event, where the color is derived from a hash of the keyboard event. At the bottom is a cumulative hash of all keyboard event data.</p>
-<hr/>
-<p>
-To test the replay functionality, open the Web Inspector, start capturing, and then type text into the textarea. After some time, stop capturing and then replay. The replayed execution should produce the same sequence of blocks. More importantly, the cumulative hash value should be the same at the end of capturing and at the end of any subsequent replays.</p>
-</p>
-<hr/>
-<form><textarea cols="80" rows="20"></textarea></form>
-<div id="hash"></div>
-<div id="blocks"></div>
-</body>
-</html>
diff --git a/ManualTests/inspector/replay-mouse-events.html b/ManualTests/inspector/replay-mouse-events.html
deleted file mode 100644 (file)
index 3f1d8ec..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<script src="./resources/crypto-md5.js"></script>
-<script type="text/javascript" language="javascript" charset="utf-8">
-
-    function glyphForType(type) {
-        switch (type) {
-        case "mousedown": return "D";
-        case "mousemove": return "M";
-        case "mouseup": return "U";
-        case "mouseover": return "I";
-        case "mouseout": return "O";
-        case "click": return "C";
-        case "dblclick": return "2";
-        }
-    }
-
-    document.onmousedown = handleEvent;
-    document.onmousemove = handleEvent;
-    document.onmouseup = handleEvent;
-    document.onmouseover = handleEvent;
-    document.onmouseout = handleEvent;
-    document.onclick = handleEvent;
-    document.ondblclick = handleEvent;
-    
-    window.dumpedEvents = [];
-    
-    function handleEvent(event) {
-        var properties = ["type", "eventPhase", "bubbles", "cancelable", "screenX", "screenY", "clientX", "clientY", "ctrlKey", "shiftKey", "altKey", "metaKey", "button"];
-        obj = {};
-        for (var key of properties)
-            obj[key] = event[key];
-    
-        dumpedEvents.push(obj);
-
-        var block = createBlock(hex_md5(JSON.stringify(obj)));
-        block.textContent = glyphForType(event.type);
-        var blocksContainer = document.getElementById("blocks");
-        blocksContainer.appendChild(block);
-        
-        var hashLabel = document.getElementById("hash");
-        hash.textContent = hex_md5(JSON.stringify(dumpedEvents));
-    }
-    
-    function createBlock(hash) {
-        var color = "#" + hash.substr(0,6);
-        var block = document.createElement("span");
-        block.style.backgroundColor = color;
-        return block;
-    }
-    
-    function stateHash() {
-        return hex_md5(JSON.stringify(dumpedEvents));
-    }
-    
-</script>
-
-<style type="text/css">
-body {
-    max-width: 800px;
-}
-#blocks {
-    display: -webkit-flex;
-    width: 600px;
-    -webkit-flex-flow: row wrap;
-}
-    
-#blocks > span {
-    width: 20px;
-    height: 20px;
-    border-radius: 10px;
-    font-size: 18px;
-    font-weight: bold;
-    font-family: sans-serif;
-    color: #fff;
-    text-align: center;
-}
-</style>
-</head>
-<body>
-<p>This page is a manual test for capture and replay of mouse-related events.</p>
-<p>Below, a block is created for each mouse event, where the color is derived from a hash of the mouse event. At the bottom is a cumulative hash of all mouse event data.</p>
-<hr/>
-<p>
-To test the replay functionality, open the Web Inspector, start capturing, and then move the mouse around this test page. After some time, stop capturing and then replay. The replayed execution should produce the same sequence of blocks. More importantly, the cumulative hash value should be the same at the end of capturing and at the end of any subsequent replays.</p>
-</p>
-<hr/>
-<div id="hash"></div>
-<div id="blocks"></div>
-</body>
-</html>
diff --git a/ManualTests/inspector/replay-wheel-events.html b/ManualTests/inspector/replay-wheel-events.html
deleted file mode 100644 (file)
index 638df0c..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<script src="./resources/crypto-md5.js"></script>
-<script type="text/javascript" language="javascript" charset="utf-8">
-
-    document.onmousewheel = handleEvent;
-    
-    window.dumpedEvents = [];
-    
-    function handleEvent(event) {
-        var properties = ["type", "eventPhase", "bubbles", "cancelable", "screenX", "screenY", "clientX", "clientY", "ctrlKey", "shiftKey", "altKey", "metaKey", "button", "deltaX", "deltaY", "deltaZ", "deltaMode", "wheelDeltaX", "wheelDeltaY"];
-        obj = {};
-        for (var key of properties)
-            obj[key] = event[key];
-    
-        dumpedEvents.push(obj);
-
-        var block = createBlock(hex_md5(JSON.stringify(obj)));
-        var blocksContainer = document.getElementById("blocks");
-        blocksContainer.appendChild(block);
-        
-        var hashLabel = document.getElementById("hash");
-        hash.textContent = hex_md5(JSON.stringify(dumpedEvents));
-    }
-    
-    function createBlock(hash) {
-        var color = "#" + hash.substr(0,6);
-        var block = document.createElement("span");
-        block.style.backgroundColor = color;
-        return block;
-    }
-    
-    function stateHash() {
-        return hex_md5(JSON.stringify(dumpedEvents));
-    }
-    
-</script>
-
-<style type="text/css">
-body {
-    max-width: 800px;
-}
-#blocks {
-    display: -webkit-flex;
-    width: 600px;
-    -webkit-flex-flow: row wrap;
-}
-    
-#blocks > span {
-    width: 10px;
-    height: 10px;
-    border-radius: 5px;
-    text-align: center;
-}
-</style>
-</head>
-<body>
-<p>This page is a manual test for capture and replay of scroll-related DOM events.</p>
-<p>Below, a block is created for each mousewheel event, where the color is derived from a hash of the event data. At the bottom is a cumulative hash of all event data.</p>
-<hr/>
-<textarea rows="3">
-
-This is a scrollable textarea.
-
-.
-
-..
-
-...
-
-....
-
-.....
-
-</textarea>
-<p>
-To test the replay functionality, open the Web Inspector, start capturing, and then scroll each of the iframe, overflow:scroll element, and the main page's flowed text. After some time, stop capturing and then replay.</p>
-<p>The replayed execution should produce the same sequence of blocks, and page contents should scroll the same distance and speed. More importantly, the cumulative hash value should be the same at the end of capturing and at the end of any subsequent replays.</p>
-</p>
-<hr/>
-<div id="hash"></div>
-<div id="blocks"></div>
-</body>
-</html>
diff --git a/ManualTests/inspector/replay-window-navigator-basic.html b/ManualTests/inspector/replay-window-navigator-basic.html
deleted file mode 100644 (file)
index d9eea7b..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<script src="./resources/crypto-md5.js"></script>
-<script type="text/javascript" language="javascript" charset="utf-8">
-
-    window.dumpedStates = [];
-
-    function dumpState() {
-        obj = {
-            appCodeName: window.navigator.appCodeName,
-            appName: window.navigator.appName,
-            appVersion: window.navigator.appVersion,
-            language: window.navigator.language,
-            userAgent: window.navigator.userAgent,
-            platform: window.navigator.platform,
-            product: window.navigator.product,
-            productSub: window.navigator.productSub,
-            vendor: window.navigator.vendor,
-            vendorSub: window.navigator.vendorSub,
-            cookieEnabled: window.navigator.cookieEnabled,
-            javaEnabled: window.navigator.javaEnabled(),
-        };
-
-        dumpedStates.push(obj);
-
-        var block = createBlock(hex_md5(JSON.stringify(obj)));
-        var blocksContainer = document.getElementById("blocks");
-        blocksContainer.appendChild(block);
-
-        var hashLabel = document.getElementById("hash");
-        hash.textContent = hex_md5(JSON.stringify(dumpedStates));
-
-        appendDetails(obj);
-    }
-
-    function appendDetails(obj) {
-        var detailsContainer = document.getElementById("details");
-        var tableElement = document.createElement("table");
-        for (var key in obj) {
-            var rowElement = document.createElement("tr");
-            var keyElement = document.createElement("td");
-            keyElement.textContent = key;
-            rowElement.appendChild(keyElement);
-            var valueElement = document.createElement("td");
-            valueElement.textContent = obj[key];
-            rowElement.appendChild(valueElement);
-            tableElement.appendChild(rowElement);
-        }
-        detailsContainer.appendChild(tableElement);
-        detailsContainer.appendChild(document.createElement("hr"));
-    }
-
-    function createBlock(hash) {
-        var color = "#" + hash.substr(0,6);
-        var block = document.createElement("span");
-        block.style.backgroundColor = color;
-        return block;
-    }
-
-</script>
-
-<style type="text/css">
-body {
-    max-width: 800px;
-}
-#blocks {
-    display: -webkit-flex;
-    width: 600px;
-    -webkit-flex-flow: row wrap;
-}
-
-table {
-    text-decoration: bold;
-    font-family: monospace;
-}
-
-#blocks > span {
-    width: 20px;
-    height: 20px;
-    border-radius: 10px;
-    font-size: 18px;
-    font-weight: bold;
-    font-family: sans-serif;
-    color: #fff;
-    text-align: center;
-}
-</style>
-</head>
-<body onload="dumpState()">
-<p>This page is a manual test for capture and replay of parts of the Navigator DOM API.</p>
-<p>Below, a block is created for each button press that dumps state. The color is derived from a hash of the state. At the bottom is a cumulative hash of all dumped data.</p>
-<hr/>
-<p>
-To test the replay functionality, open the Web Inspector and start capturing. Then change your browser configuration in one of the following ways to change navigator state:
-</p>
-<ul>
-    <li>Change the default language.</li>
-    <li>Toggle Java or cookies support.</li>
-    <li>Change the user agent string.</li>
-</ul>
-</p>
-Then, stop capturing and replay the recording. The replayed execution should produce the same sequence of blocks. More importantly, the cumulative hash value should be the same at the end of capturing and at the end of any subsequent replays.</p>
-</p>
-<hr/>
-<form>
-<input type="button" value="Dump window.navigator Values" onclick="dumpState()" />
-</form>
-<div id="hash"></div>
-<div id="blocks"></div>
-<div id="details"></div>
-</body>
-</html>
diff --git a/ManualTests/inspector/replay-window-screen.html b/ManualTests/inspector/replay-window-screen.html
deleted file mode 100644 (file)
index f56f0b6..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html lang="en">
-<head>
-<script src="./resources/crypto-md5.js"></script>
-<script type="text/javascript" language="javascript" charset="utf-8">
-
-    window.dumpedStates = [];
-
-    function dumpState() {
-        obj = {
-             height: window.screen.height,
-             width: window.screen.width,
-             colorDepth: window.screen.colorDepth,
-             pixelDepth: window.screen.pixelDepth,
-             availLeft: window.screen.availLeft,
-             availTop: window.screen.availTop,
-             availHeight: window.screen.availHeight,
-             availWidth: window.screen.availWidth,
-        };
-
-        dumpedStates.push(obj);
-
-        var block = createBlock(hex_md5(JSON.stringify(obj)));
-        var blocksContainer = document.getElementById("blocks");
-        blocksContainer.appendChild(block);
-
-        var hashLabel = document.getElementById("hash");
-        hash.textContent = hex_md5(JSON.stringify(dumpedStates));
-
-        appendDetails(obj);
-    }
-
-    function appendDetails(obj) {
-        var detailsContainer = document.getElementById("details");
-        var tableElement = document.createElement("table");
-        for (var key in obj) {
-            var rowElement = document.createElement("tr");
-            var keyElement = document.createElement("td");
-            keyElement.textContent = key;
-            rowElement.appendChild(keyElement);
-            var valueElement = document.createElement("td");
-            valueElement.textContent = obj[key];
-            rowElement.appendChild(valueElement);
-            tableElement.appendChild(rowElement);
-        }
-        detailsContainer.appendChild(tableElement);
-        detailsContainer.appendChild(document.createElement("hr"));
-    }
-
-    function createBlock(hash) {
-        var color = "#" + hash.substr(0,6);
-        var block = document.createElement("span");
-        block.style.backgroundColor = color;
-        return block;
-    }
-
-</script>
-
-<style type="text/css">
-body {
-    max-width: 800px;
-}
-#blocks {
-    display: -webkit-flex;
-    width: 600px;
-    -webkit-flex-flow: row wrap;
-}
-
-table {
-    text-decoration: bold;
-    font-family: monospace;
-}
-
-#blocks > span {
-    width: 20px;
-    height: 20px;
-    border-radius: 10px;
-    font-size: 18px;
-    font-weight: bold;
-    font-family: sans-serif;
-    color: #fff;
-    text-align: center;
-}
-</style>
-</head>
-<body onload="dumpState()">
-<p>This page is a manual test for capture and replay of the Screen API.</p>
-<p>Below, a block is created for each button press that dumps state. The color is derived from a hash of the state. At the bottom is a cumulative hash of all dumped data.</p>
-<hr/>
-<p>
-To test the replay functionality, open the Web Inspector and start capturing. Then perform one of the following to change screen state:
-</p>
-<ul>
-    <li>If you have two monitors, move the menu bar from one display to the other.</li>
-    <li>Change the monitor's resolution.</li>
-    <li>Change the monitor's color depth.</li>
-    <li>Move the browser window between monitors with different color depth, size, or pixel ratio.</li>
-</ul>
-</p>
-Then, stop capturing and replay the recording. The replayed execution should produce the same sequence of blocks. More importantly, the cumulative hash value should be the same at the end of capturing and at the end of any subsequent replays.</p>
-</p>
-<hr/>
-<form>
-<input type="button" value="Dump window.screen Values" onclick="dumpState()" />
-</form>
-<div id="hash"></div>
-<div id="blocks"></div>
-<div id="details"></div>
-</body>
-</html>
index 0d6c3d2..937d989 100644 (file)
@@ -32,7 +32,6 @@ set(JavaScriptCore_INCLUDE_DIRECTORIES
     "${JAVASCRIPTCORE_DIR}/llint"
     "${JAVASCRIPTCORE_DIR}/parser"
     "${JAVASCRIPTCORE_DIR}/profiler"
-    "${JAVASCRIPTCORE_DIR}/replay"
     "${JAVASCRIPTCORE_DIR}/runtime"
     "${JAVASCRIPTCORE_DIR}/tools"
     "${JAVASCRIPTCORE_DIR}/wasm"
@@ -1279,7 +1278,6 @@ set(JavaScriptCore_FORWARDING_HEADERS_DIRECTORIES
     llint
     parser
     profiler
-    replay
     runtime
     wasm
     yarr
@@ -1381,12 +1379,6 @@ if (ENABLE_RESOURCE_USAGE)
     )
 endif ()
 
-if (ENABLE_WEB_REPLAY)
-    list(APPEND JavaScriptCore_INSPECTOR_DOMAINS
-        ${JAVASCRIPTCORE_DIR}/inspector/protocol/Replay.json
-    )
-endif ()
-
 add_custom_command(
     OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/CombinedDomains.json
     MAIN_DEPENDENCY ${JavaScriptCore_SCRIPTS_DIR}/generate-combined-inspector-json.py
@@ -1506,23 +1498,6 @@ add_custom_command(
 
 list(APPEND JavaScriptCore_HEADERS ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/InjectedScriptSource.h)
 
-# Web Replay inputs generator
-if (ENABLE_WEB_REPLAY)
-    set(JavaScript_WEB_REPLAY_INPUTS ${CMAKE_CURRENT_SOURCE_DIR}/replay/JSInputs.json)
-    add_custom_command(
-        OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSReplayInputs.h ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSReplayInputs.cpp
-        MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/replay/scripts/CodeGeneratorReplayInputs.py
-        DEPENDS ${JavaScript_WEB_REPLAY_INPUTS}
-        COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/replay/scripts/CodeGeneratorReplayInputs.py --outputDir ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/ --framework JavaScriptCore ${JavaScript_WEB_REPLAY_INPUTS}
-        VERBATIM)
-
-    list(APPEND JavaScriptCore_SOURCES
-        replay/EncodedValue.cpp
-        ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSReplayInputs.cpp
-    )
-    list(APPEND JavaScriptCore_HEADERS ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSReplayInputs.h)
-endif ()
-
 if (WTF_CPU_ARM)
 elseif (WTF_CPU_ARM64)
 elseif (WTF_CPU_HPPA)
index be30661..17a3f71 100644 (file)
@@ -1,3 +1,85 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * CMakeLists.txt:
+        * Configurations/FeatureDefines.xcconfig:
+        * DerivedSources.make:
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+        * inspector/protocol/Replay.json: Removed.
+        * replay/EmptyInputCursor.h: Removed.
+        * replay/EncodedValue.cpp: Removed.
+        * replay/EncodedValue.h: Removed.
+        * replay/InputCursor.h: Removed.
+        * replay/JSInputs.json: Removed.
+        * replay/NondeterministicInput.h: Removed.
+        * replay/scripts/CodeGeneratorReplayInputs.py: Removed.
+        * replay/scripts/CodeGeneratorReplayInputsTemplates.py: Removed.
+        * replay/scripts/tests/expected/fail-on-c-style-enum-no-storage.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-duplicate-input-names.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-duplicate-type-names.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-enum-type-missing-values.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-missing-input-member-name.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-missing-input-name.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-missing-input-queue.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-missing-type-mode.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-missing-type-name.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-unknown-input-queue.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-unknown-member-type.json-error: Removed.
+        * replay/scripts/tests/expected/fail-on-unknown-type-mode.json-error: Removed.
+        * replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-event-loop-shape-types.json-error: Removed.
+        * replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp: Removed.
+        * replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h: Removed.
+        * replay/scripts/tests/fail-on-c-style-enum-no-storage.json: Removed.
+        * replay/scripts/tests/fail-on-duplicate-enum-type.json: Removed.
+        * replay/scripts/tests/fail-on-duplicate-input-names.json: Removed.
+        * replay/scripts/tests/fail-on-duplicate-type-names.json: Removed.
+        * replay/scripts/tests/fail-on-enum-type-missing-values.json: Removed.
+        * replay/scripts/tests/fail-on-missing-input-member-name.json: Removed.
+        * replay/scripts/tests/fail-on-missing-input-name.json: Removed.
+        * replay/scripts/tests/fail-on-missing-input-queue.json: Removed.
+        * replay/scripts/tests/fail-on-missing-type-mode.json: Removed.
+        * replay/scripts/tests/fail-on-missing-type-name.json: Removed.
+        * replay/scripts/tests/fail-on-unknown-input-queue.json: Removed.
+        * replay/scripts/tests/fail-on-unknown-member-type.json: Removed.
+        * replay/scripts/tests/fail-on-unknown-type-mode.json: Removed.
+        * replay/scripts/tests/generate-enum-encoding-helpers-with-guarded-values.json: Removed.
+        * replay/scripts/tests/generate-enum-encoding-helpers.json: Removed.
+        * replay/scripts/tests/generate-enum-with-guard.json: Removed.
+        * replay/scripts/tests/generate-enums-with-same-base-name.json: Removed.
+        * replay/scripts/tests/generate-event-loop-shape-types.json: Removed.
+        * replay/scripts/tests/generate-input-with-guard.json: Removed.
+        * replay/scripts/tests/generate-input-with-vector-members.json: Removed.
+        * replay/scripts/tests/generate-inputs-with-flags.json: Removed.
+        * replay/scripts/tests/generate-memoized-type-modes.json: Removed.
+        * runtime/DateConstructor.cpp:
+        (JSC::constructDate):
+        (JSC::dateNow):
+        (JSC::deterministicCurrentTime): Deleted.
+        * runtime/JSGlobalObject.cpp:
+        (JSC::JSGlobalObject::JSGlobalObject):
+        (JSC::JSGlobalObject::setInputCursor): Deleted.
+        * runtime/JSGlobalObject.h:
+        (JSC::JSGlobalObject::inputCursor): Deleted.
+
 2017-07-10  Carlos Garcia Campos  <cgarcia@igalia.com>
 
         Move make-js-file-arrays.py from WebCore to JavaScriptCore
index b20fc82..6d5ad4a 100644 (file)
@@ -214,9 +214,6 @@ ENABLE_WEBGPU = ENABLE_WEBGPU;
 ENABLE_WEBGPU[sdk=iphonesimulator*] = ;
 ENABLE_WEB_ANIMATIONS = ENABLE_WEB_ANIMATIONS;
 ENABLE_WEB_AUDIO = ENABLE_WEB_AUDIO;
-ENABLE_WEB_REPLAY = $(ENABLE_WEB_REPLAY_$(PLATFORM_NAME)_$(CONFIGURATION));
-ENABLE_WEB_REPLAY_macosx_Debug = ENABLE_WEB_REPLAY;
-ENABLE_WEB_REPLAY_macosx_Release = ENABLE_WEB_REPLAY;
 ENABLE_WEB_SOCKETS = ENABLE_WEB_SOCKETS;
 
 ENABLE_WEB_TIMING = ENABLE_WEB_TIMING;
@@ -249,4 +246,4 @@ ENABLE_DRAG_SUPPORT[sdk=iphonesimulator11*] = ENABLE_DRAG_SUPPORT;
 ENABLE_DATA_INTERACTION[sdk=iphoneos11*] = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator11*] = ENABLE_DATA_INTERACTION;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_RTC) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index d425348..d69baf5 100644 (file)
@@ -56,7 +56,6 @@ all : \
     InitBytecodes.asm \
     InjectedScriptSource.h \
     InspectorFrontendDispatchers.h \
-    JSReplayInputs.h \
     JSCBuiltins.h \
     Lexer.lut.h \
     KeywordLookup.h \
@@ -242,10 +241,6 @@ ifeq ($(findstring ENABLE_RESOURCE_USAGE,$(FEATURE_DEFINES)), ENABLE_RESOURCE_US
     INSPECTOR_DOMAINS := $(INSPECTOR_DOMAINS) $(JavaScriptCore)/inspector/protocol/Memory.json
 endif
 
-ifeq ($(findstring ENABLE_WEB_REPLAY,$(FEATURE_DEFINES)), ENABLE_WEB_REPLAY)
-    INSPECTOR_DOMAINS := $(INSPECTOR_DOMAINS) $(JavaScriptCore)/inspector/protocol/Replay.json
-endif
-
 INSPECTOR_GENERATOR_SCRIPTS = \
        $(JavaScriptCore)/inspector/scripts/codegen/__init__.py \
        $(JavaScriptCore)/inspector/scripts/codegen/cpp_generator_templates.py \
@@ -284,20 +279,6 @@ InjectedScriptSource.h : inspector/InjectedScriptSource.js $(JavaScriptCore_SCRI
        $(PERL) $(JavaScriptCore_SCRIPTS_DIR)/xxd.pl InjectedScriptSource_js ./InjectedScriptSource.min.js InjectedScriptSource.h
        $(DELETE) InjectedScriptSource.min.js
 
-# Web Replay inputs generator
-
-INPUT_GENERATOR_SCRIPTS = \
-    $(JavaScriptCore)/replay/scripts/CodeGeneratorReplayInputs.py \
-    $(JavaScriptCore)/replay/scripts/CodeGeneratorReplayInputsTemplates.py \
-#
-
-INPUT_GENERATOR_SPECIFICATIONS = \
-    $(JavaScriptCore)/replay/JSInputs.json \
-#
-
-JSReplayInputs.h : $(INPUT_GENERATOR_SPECIFICATIONS) $(INPUT_GENERATOR_SCRIPTS)
-       $(PYTHON) $(JavaScriptCore)/replay/scripts/CodeGeneratorReplayInputs.py --outputDir . --framework JavaScriptCore $(INPUT_GENERATOR_SPECIFICATIONS)
-
 AirOpcode.h: $(JavaScriptCore)/b3/air/opcode_generator.rb $(JavaScriptCore)/b3/air/AirOpcode.opcodes
        $(RUBY) $^
 
index ed8bf9c..9a47a77 100644 (file)
                978801411471AD920041B016 /* JSDateMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 9788FC231471AD0C0068CE2D /* JSDateMath.h */; settings = {ATTRIBUTES = (Private, ); }; };
                981ED82328234D91BAECCADE /* MachineContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 28806E21155E478A93FA7B02 /* MachineContext.h */; settings = {ATTRIBUTES = (Private, ); }; };
                990DA67F1C8E316A00295159 /* generate_objc_protocol_type_conversions_implementation.py in Headers */ = {isa = PBXBuildFile; fileRef = 990DA67E1C8E311D00295159 /* generate_objc_protocol_type_conversions_implementation.py */; settings = {ATTRIBUTES = (Private, ); }; };
-               9928FF3B18AC4AEC00B8CF12 /* JSReplayInputs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9928FF3918AC4AEC00B8CF12 /* JSReplayInputs.cpp */; };
-               9928FF3C18AC4AEC00B8CF12 /* JSReplayInputs.h in Headers */ = {isa = PBXBuildFile; fileRef = 9928FF3A18AC4AEC00B8CF12 /* JSReplayInputs.h */; settings = {ATTRIBUTES = (Private, ); }; };
                992ABCF91BEA9BD2006403A0 /* RemoteAutomationTarget.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 992ABCF51BEA94CA006403A0 /* RemoteAutomationTarget.cpp */; };
                992F56B41E4E84A40035953B /* RemoteConnectionToTargetCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 992F56B31E4E847D0035953B /* RemoteConnectionToTargetCocoa.mm */; };
                992F56B51E4E84A80035953B /* RemoteInspectorCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 992F56B01E4E84790035953B /* RemoteInspectorCocoa.mm */; };
                996B73281BDA08EF00331B84 /* SymbolPrototype.lut.h in Headers */ = {isa = PBXBuildFile; fileRef = 996B73141BD9FA2C00331B84 /* SymbolPrototype.lut.h */; };
                998ED6741BED70AC00DD8017 /* RemoteControllableTarget.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 998ED6721BED659A00DD8017 /* RemoteControllableTarget.cpp */; };
                998ED6751BED768C00DD8017 /* RemoteControllableTarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 998ED6731BED659A00DD8017 /* RemoteControllableTarget.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               99CC0B6218BE9946006CEBCC /* CodeGeneratorReplayInputsTemplates.py in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A1E18A1B1E70026D88F /* CodeGeneratorReplayInputsTemplates.py */; settings = {ATTRIBUTES = (Private, ); }; };
-               99CC0B6318BE9950006CEBCC /* CodeGeneratorReplayInputs.py in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A1D18A1B1E70026D88F /* CodeGeneratorReplayInputs.py */; settings = {ATTRIBUTES = (Private, ); }; };
                99D6A1161BEAD34D00E25C37 /* RemoteAutomationTarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 992ABCF61BEA94CA006403A0 /* RemoteAutomationTarget.h */; settings = {ATTRIBUTES = (Private, ); }; };
                99DA00A31BD5993100F4575C /* builtins_generator.py in Headers */ = {isa = PBXBuildFile; fileRef = 99DA009A1BD5992700F4575C /* builtins_generator.py */; settings = {ATTRIBUTES = (Private, ); }; };
                99DA00A41BD5993100F4575C /* builtins_model.py in Headers */ = {isa = PBXBuildFile; fileRef = 99DA009B1BD5992700F4575C /* builtins_model.py */; settings = {ATTRIBUTES = (Private, ); }; };
                99DA00AF1BD5994E00F4575C /* generate-js-builtins.py in Headers */ = {isa = PBXBuildFile; fileRef = 99DA00AC1BD5993E00F4575C /* generate-js-builtins.py */; settings = {ATTRIBUTES = (Private, ); }; };
                99DA00B01BD5994E00F4575C /* lazywriter.py in Headers */ = {isa = PBXBuildFile; fileRef = 99DA00AD1BD5993E00F4575C /* lazywriter.py */; settings = {ATTRIBUTES = (Private, ); }; };
                99DA00B11BD5994E00F4575C /* UpdateContents.py in Headers */ = {isa = PBXBuildFile; fileRef = 99DA00AE1BD5993E00F4575C /* UpdateContents.py */; settings = {ATTRIBUTES = (Private, ); }; };
-               99E45A2418A1B2590026D88F /* EmptyInputCursor.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A1F18A1B2590026D88F /* EmptyInputCursor.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               99E45A2518A1B2590026D88F /* EncodedValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 99E45A2018A1B2590026D88F /* EncodedValue.cpp */; };
-               99E45A2618A1B2590026D88F /* EncodedValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2118A1B2590026D88F /* EncodedValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               99E45A2718A1B2590026D88F /* InputCursor.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2218A1B2590026D88F /* InputCursor.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               99E45A2818A1B2590026D88F /* NondeterministicInput.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2318A1B2590026D88F /* NondeterministicInput.h */; settings = {ATTRIBUTES = (Private, ); }; };
                99F1A6FE1B8E6D9400463B26 /* InspectorFrontendRouter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 99F1A6FC1B8E6D9400463B26 /* InspectorFrontendRouter.cpp */; };
                99F1A7011B98FBEC00463B26 /* InspectorFrontendRouter.h in Headers */ = {isa = PBXBuildFile; fileRef = 99F1A7001B98FBEC00463B26 /* InspectorFrontendRouter.h */; settings = {ATTRIBUTES = (Private, ); }; };
                9E729407190F01A5001A91B5 /* InitializeThreading.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E178636C0D9BEEC300D74E75 /* InitializeThreading.cpp */; };
                C2FCAE1217A9C24E0034C735 /* BytecodeLivenessAnalysis.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2FCAE0E17A9C24E0034C735 /* BytecodeLivenessAnalysis.cpp */; };
                C2FCAE1317A9C24E0034C735 /* BytecodeLivenessAnalysis.h in Headers */ = {isa = PBXBuildFile; fileRef = C2FCAE0F17A9C24E0034C735 /* BytecodeLivenessAnalysis.h */; settings = {ATTRIBUTES = (Private, ); }; };
                C2FE18A416BAEC4000AF3061 /* StructureRareData.h in Headers */ = {isa = PBXBuildFile; fileRef = C2FE18A316BAEC4000AF3061 /* StructureRareData.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               C442CB251A6CDB8C005D3D7C /* JSInputs.json in Headers */ = {isa = PBXBuildFile; fileRef = 9928FF3D18AC4B1C00B8CF12 /* JSInputs.json */; settings = {ATTRIBUTES = (Private, ); }; };
                C4703CC0192844960013FBEA /* generate-inspector-protocol-bindings.py in Headers */ = {isa = PBXBuildFile; fileRef = C4703CBF192844960013FBEA /* generate-inspector-protocol-bindings.py */; settings = {ATTRIBUTES = (Private, ); }; };
                C4703CCE192844CC0013FBEA /* generate_js_backend_commands.py in Headers */ = {isa = PBXBuildFile; fileRef = C4703CC3192844CC0013FBEA /* generate_js_backend_commands.py */; settings = {ATTRIBUTES = (Private, ); }; };
                C4703CD5192844CC0013FBEA /* generator_templates.py in Headers */ = {isa = PBXBuildFile; fileRef = C4703CCA192844CC0013FBEA /* generator_templates.py */; settings = {ATTRIBUTES = (Private, ); }; };
                9788FC221471AD0C0068CE2D /* JSDateMath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDateMath.cpp; sourceTree = "<group>"; };
                9788FC231471AD0C0068CE2D /* JSDateMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDateMath.h; sourceTree = "<group>"; };
                990DA67E1C8E311D00295159 /* generate_objc_protocol_type_conversions_implementation.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = generate_objc_protocol_type_conversions_implementation.py; sourceTree = "<group>"; };
-               9928FF3918AC4AEC00B8CF12 /* JSReplayInputs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSReplayInputs.cpp; sourceTree = "<group>"; };
-               9928FF3A18AC4AEC00B8CF12 /* JSReplayInputs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSReplayInputs.h; sourceTree = "<group>"; };
-               9928FF3D18AC4B1C00B8CF12 /* JSInputs.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = JSInputs.json; sourceTree = "<group>"; };
                992ABCF51BEA94CA006403A0 /* RemoteAutomationTarget.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteAutomationTarget.cpp; sourceTree = "<group>"; };
                992ABCF61BEA94CA006403A0 /* RemoteAutomationTarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteAutomationTarget.h; sourceTree = "<group>"; };
                992F56B01E4E84790035953B /* RemoteInspectorCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RemoteInspectorCocoa.mm; sourceTree = "<group>"; };
                99DA00AC1BD5993E00F4575C /* generate-js-builtins.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = "generate-js-builtins.py"; sourceTree = "<group>"; };
                99DA00AD1BD5993E00F4575C /* lazywriter.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = lazywriter.py; sourceTree = "<group>"; };
                99DA00AE1BD5993E00F4575C /* UpdateContents.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = UpdateContents.py; sourceTree = "<group>"; };
-               99E45A1D18A1B1E70026D88F /* CodeGeneratorReplayInputs.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = CodeGeneratorReplayInputs.py; sourceTree = "<group>"; };
-               99E45A1E18A1B1E70026D88F /* CodeGeneratorReplayInputsTemplates.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = CodeGeneratorReplayInputsTemplates.py; sourceTree = "<group>"; };
-               99E45A1F18A1B2590026D88F /* EmptyInputCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EmptyInputCursor.h; sourceTree = "<group>"; };
-               99E45A2018A1B2590026D88F /* EncodedValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EncodedValue.cpp; sourceTree = "<group>"; };
-               99E45A2118A1B2590026D88F /* EncodedValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EncodedValue.h; sourceTree = "<group>"; };
-               99E45A2218A1B2590026D88F /* InputCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputCursor.h; sourceTree = "<group>"; };
-               99E45A2318A1B2590026D88F /* NondeterministicInput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NondeterministicInput.h; sourceTree = "<group>"; };
                99F1A6FC1B8E6D9400463B26 /* InspectorFrontendRouter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorFrontendRouter.cpp; sourceTree = "<group>"; };
                99F1A7001B98FBEC00463B26 /* InspectorFrontendRouter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorFrontendRouter.h; sourceTree = "<group>"; };
                9B4954E81A6640DB002815A6 /* ParserFunctionInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ParserFunctionInfo.h; sourceTree = "<group>"; };
                                7E39D8370EC3A388003AF11A /* parser */,
                                034768DFFF38A50411DB9C8B /* Products */,
                                95AB831A0DA42C6900BC83F3 /* profiler */,
-                               99E45A0C18A01E930026D88F /* replay */,
                                932FC3C20824BB70005B3C75 /* Resources */,
                                7EF6E0BB0EB7A1EC0079AFAF /* runtime */,
                                9959E9251BD17F1E001AA413 /* Scripts */,
                                BC87CDB810712ACA000614CF /* JSONObject.lut.h */,
                                7C184E2417BFFA36007CB63A /* JSPromiseConstructor.lut.h */,
                                7C184E2517BFFA36007CB63A /* JSPromisePrototype.lut.h */,
-                               9928FF3918AC4AEC00B8CF12 /* JSReplayInputs.cpp */,
-                               9928FF3A18AC4AEC00B8CF12 /* JSReplayInputs.h */,
                                A7C225CD1399849C00FF1662 /* KeywordLookup.h */,
                                BC18C52D0E16FCE100B34460 /* Lexer.lut.h */,
                                70DE9A081BE7D670005D89D9 /* LLIntAssembly.h */,
                        path = builtins;
                        sourceTree = "<group>";
                };
-               99E45A0C18A01E930026D88F /* replay */ = {
-                       isa = PBXGroup;
-                       children = (
-                               99E45A1C18A1B1B80026D88F /* scripts */,
-                               99E45A1F18A1B2590026D88F /* EmptyInputCursor.h */,
-                               99E45A2018A1B2590026D88F /* EncodedValue.cpp */,
-                               99E45A2118A1B2590026D88F /* EncodedValue.h */,
-                               99E45A2218A1B2590026D88F /* InputCursor.h */,
-                               9928FF3D18AC4B1C00B8CF12 /* JSInputs.json */,
-                               99E45A2318A1B2590026D88F /* NondeterministicInput.h */,
-                       );
-                       path = replay;
-                       sourceTree = "<group>";
-               };
-               99E45A1C18A1B1B80026D88F /* scripts */ = {
-                       isa = PBXGroup;
-                       children = (
-                               99E45A1D18A1B1E70026D88F /* CodeGeneratorReplayInputs.py */,
-                               99E45A1E18A1B1E70026D88F /* CodeGeneratorReplayInputsTemplates.py */,
-                       );
-                       path = scripts;
-                       sourceTree = "<group>";
-               };
                A513E5CC185FB992007E95AD /* agents */ = {
                        isa = PBXGroup;
                        children = (
                                0F664CE81DA304EF00B00A11 /* CodeBlockSetInlines.h in Headers */,
                                0F96EBB316676EF6008BADE3 /* CodeBlockWithJITType.h in Headers */,
                                A77F1822164088B200640A47 /* CodeCache.h in Headers */,
-                               99CC0B6318BE9950006CEBCC /* CodeGeneratorReplayInputs.py in Headers */,
-                               99CC0B6218BE9946006CEBCC /* CodeGeneratorReplayInputsTemplates.py in Headers */,
                                86E116B10FE75AC800B512BC /* CodeLocation.h in Headers */,
                                0FBD7E691447999600481315 /* CodeOrigin.h in Headers */,
                                0F21C27D14BE727A00ADC64B /* CodeSpecializationKind.h in Headers */,
                                A70447EE17A0BD7000F5898E /* DumpContext.h in Headers */,
                                FE318FE01CAC982F00DFCC54 /* ECMAScriptSpecInternalFunctions.h in Headers */,
                                2A83638618D7D0EE0000EBCC /* EdenGCActivityCallback.h in Headers */,
-                               99E45A2418A1B2590026D88F /* EmptyInputCursor.h in Headers */,
-                               99E45A2618A1B2590026D88F /* EncodedValue.h in Headers */,
                                2AD2EDFB19799E38004D6478 /* EnumerationMode.h in Headers */,
                                BC3046070E1F497F003232CF /* Error.h in Headers */,
                                BC02E90D0E1839DB000F9297 /* ErrorConstructor.h in Headers */,
                                7905BB691D12050E0019FE57 /* InlineAccess.h in Headers */,
                                148A7BF01B82975A002D9157 /* InlineCallFrame.h in Headers */,
                                0F24E55617F0B71C00ABB217 /* InlineCallFrameSet.h in Headers */,
-                               99E45A2718A1B2590026D88F /* InputCursor.h in Headers */,
                                A584032018BFFBE1005A0811 /* InspectorAgent.h in Headers */,
                                A593CF7F1840362C00BFCE27 /* InspectorAgentBase.h in Headers */,
                                A593CF87184038CA00BFCE27 /* InspectorAgentRegistry.h in Headers */,
                                0F0CAEFC1EC4DA6B00970D12 /* JSHeapFinalizerPrivate.h in Headers */,
                                A513E5C0185BFACC007E95AD /* JSInjectedScriptHost.h in Headers */,
                                A513E5C2185BFACC007E95AD /* JSInjectedScriptHostPrototype.h in Headers */,
-                               C442CB251A6CDB8C005D3D7C /* JSInputs.json in Headers */,
                                0F2B66F817B6B5AB00A7AE3F /* JSInt16Array.h in Headers */,
                                0F2B66F917B6B5AB00A7AE3F /* JSInt32Array.h in Headers */,
                                0F2B66F717B6B5AB00A7AE3F /* JSInt8Array.h in Headers */,
                                2A05ABD61961DF2400341750 /* JSPropertyNameEnumerator.h in Headers */,
                                862553D216136E1A009F17D0 /* JSProxy.h in Headers */,
                                A552C3801ADDB8FE00139726 /* JSRemoteInspector.h in Headers */,
-                               9928FF3C18AC4AEC00B8CF12 /* JSReplayInputs.h in Headers */,
                                BC18C4260E16F5CD00B34460 /* JSRetainPtr.h in Headers */,
                                534638711E70CF3D00F12AC1 /* JSRunLoopTimer.h in Headers */,
                                14874AE615EBDE4A002E3587 /* JSScope.h in Headers */,
                                E33E8D211B9013DE00346B52 /* NativeStdFunctionCell.h in Headers */,
                                0FFB922016D033B70055A5DB /* NodeConstructors.h in Headers */,
                                BC18C43F0E16F5CD00B34460 /* Nodes.h in Headers */,
-                               99E45A2818A1B2590026D88F /* NondeterministicInput.h in Headers */,
                                BC18C4410E16F5CD00B34460 /* NumberConstructor.h in Headers */,
                                BC18C4420E16F5CD00B34460 /* NumberConstructor.lut.h in Headers */,
                                BC18C4430E16F5CD00B34460 /* NumberObject.h in Headers */,
                                A70447ED17A0BD7000F5898E /* DumpContext.cpp in Sources */,
                                FE318FDF1CAC982700DFCC54 /* ECMAScriptSpecInternalFunctions.cpp in Sources */,
                                2A83638518D7D0EE0000EBCC /* EdenGCActivityCallback.cpp in Sources */,
-                               99E45A2518A1B2590026D88F /* EncodedValue.cpp in Sources */,
                                147F39C7107EC37600427A48 /* Error.cpp in Sources */,
                                147F39C8107EC37600427A48 /* ErrorConstructor.cpp in Sources */,
                                FEB58C14187B8B160098EF0B /* ErrorHandlingScope.cpp in Sources */,
                                2A05ABD51961DF2400341750 /* JSPropertyNameEnumerator.cpp in Sources */,
                                862553D116136DA9009F17D0 /* JSProxy.cpp in Sources */,
                                A552C37F1ADDB8FE00139726 /* JSRemoteInspector.cpp in Sources */,
-                               9928FF3B18AC4AEC00B8CF12 /* JSReplayInputs.cpp in Sources */,
                                534638731E70D01500F12AC1 /* JSRunLoopTimer.cpp in Sources */,
                                14874AE515EBDE4A002E3587 /* JSScope.cpp in Sources */,
                                14815F5F991C46BEB98D0016 /* JSScriptFetcher.cpp in Sources */,
diff --git a/Source/JavaScriptCore/inspector/protocol/Replay.json b/Source/JavaScriptCore/inspector/protocol/Replay.json
deleted file mode 100644 (file)
index 7bc26bd..0000000
+++ /dev/null
@@ -1,264 +0,0 @@
-{
-    "domain": "Replay",
-    "description": "Controls web replay, and manages recording sessions and segments.",
-    "featureGuard": "ENABLE(WEB_REPLAY)",
-    "availability": "web",
-    "types": [
-        {
-            "id": "SessionIdentifier", "description": "Unique replay session identifier.",
-            "type": "integer"
-        },
-        {
-            "id": "SegmentIdentifier", "description": "Unique session segment identifier.",
-            "type": "integer"
-        },
-        {
-            "id": "SessionState", "description": "State machine's state for the session.",
-            "type": "string",
-            "enum": ["Capturing", "Inactive", "Replaying"]
-        },
-        {
-            "id": "SegmentState", "description": "State machine's state for the session segment.",
-            "type": "string",
-            "enum": ["Appending", "Unloaded", "Loaded", "Dispatching"]
-        },
-        {
-            "id": "ReplayPosition",
-            "type": "object",
-            "properties": [
-               { "name": "segmentOffset", "type": "integer", "description": "Offset for a segment within the currently-loaded replay session." },
-               { "name": "inputOffset", "type": "integer", "description": "Offset for an event loop input within the specified session segment." }
-            ]
-        },
-        {
-            "id": "ReplayInput",
-            "type": "object",
-            "properties": [
-                { "name": "type", "type": "string", "description": "Input type." },
-                { "name": "offset", "type": "integer", "description": "Offset of this input in its respective queue."},
-                { "name": "data", "type": "object", "description": "Per-input payload." }
-            ]
-        },
-        {
-            "id": "ReplayInputQueue",
-            "type": "object",
-            "properties": [
-                { "name": "type", "type": "string", "description": "Queue type" },
-                { "name": "inputs", "type": "array", "items": { "$ref": "ReplayInput"}, "description": "Inputs belonging to this queue." }
-            ]
-        },
-        {
-            "id": "SessionSegment", "description": "A standalone segment of a replay session that corresponds to a single main frame navigation and execution.",
-            "type": "object",
-            "properties": [
-                { "name": "id", "$ref": "SegmentIdentifier", "description": "Unique session segment identifier." },
-                { "name": "timestamp", "type": "number", "description": "Start time of the segment, in milliseconds since the epoch." },
-                { "name": "queues", "type": "array", "items": { "$ref": "ReplayInputQueue"} }
-            ]
-        },
-        {
-            "id": "ReplaySession", "description": "An ordered collection of replay session segments.",
-            "type": "object",
-            "properties": [
-                { "name": "id", "$ref": "SessionIdentifier", "description": "Unique replay session identifier." },
-                { "name": "timestamp", "type": "number", "description": "Creation time of session, in milliseconds since the epoch." },
-                { "name": "segments", "type": "array", "items": { "$ref": "SegmentIdentifier" }, "description": "An ordered list identifiers for the segments that comprise this replay session." }
-            ]
-        }
-    ],
-    "commands": [
-        {
-            "name": "startCapturing",
-            "description": "Starts capture of a new replay session."
-        },
-        {
-            "name": "stopCapturing",
-            "description": "Stops capture of the currently recording replay session."
-        },
-        {
-            "name": "replayToPosition",
-            "description": "Seek execution to a specific position within the replay session.",
-            "parameters": [
-                { "name": "position", "$ref": "ReplayPosition" },
-                { "name": "shouldFastForward", "type": "boolean" }
-            ]
-        },
-        {
-            "name": "replayToCompletion",
-            "description": "Replay all session segments completely.",
-            "parameters": [
-                { "name": "shouldFastForward", "type": "boolean" }
-            ]
-        },
-        {
-            "name": "pausePlayback",
-            "description": "Pauses playback in the current segment. Can be resumed by using a replay command."
-        },
-        {
-            "name": "cancelPlayback",
-            "description": "Cancels playback of the current segment. Further replaying will start from the beginning of the current segment."
-        },
-        {
-            "name": "switchSession",
-            "description": "Unloads the current replay session and loads the specified session",
-            "parameters": [
-                { "name": "sessionIdentifier", "$ref": "SessionIdentifier" }
-            ]
-        },
-        {
-            "name": "insertSessionSegment",
-            "description": "Splices the specified session segment into the session at the specified index.",
-            "parameters": [
-                { "name": "sessionIdentifier", "$ref": "SessionIdentifier" },
-                { "name": "segmentIdentifier", "$ref": "SegmentIdentifier" },
-                { "name": "segmentIndex", "type": "integer" }
-            ]
-        },
-        {
-            "name": "removeSessionSegment",
-            "description": "Removes the session segment at the specified position from the session.",
-            "parameters": [
-                { "name": "sessionIdentifier", "$ref": "SessionIdentifier" },
-                { "name": "segmentIndex", "type": "integer" }
-            ]
-        },
-        {
-            "name": "currentReplayState",
-            "description": "Returns the identifier, position, session state and segment state of the currently loaded session. This is necessary because the inspector may be closed and reopened in the middle of replay.",
-            "returns": [
-                { "name": "sessionIdentifier", "$ref": "SessionIdentifier" },
-                { "name": "segmentIdentifier", "$ref": "SegmentIdentifier", "optional": true, "description": "If no segment is currently loaded, then there is no valid segment identifier." },
-                { "name": "sessionState", "$ref": "SessionState" },
-                { "name": "segmentState", "$ref": "SegmentState" },
-                { "name": "replayPosition", "$ref": "ReplayPosition" }
-            ]
-        },
-        {
-            "name": "getAvailableSessions",
-            "description": "Returns identifiers of all available sessions.",
-            "returns": [
-                { "name": "ids", "type": "array", "items": { "$ref": "SessionIdentifier" } }
-            ]
-        },
-        {
-            "name": "getSessionData",
-            "description": "Returns an object for the specified session.",
-            "parameters": [
-                { "name": "sessionIdentifier", "$ref": "SessionIdentifier" }
-            ],
-            "returns": [
-                { "name": "session", "$ref": "ReplaySession", "optional": true, "description": "The requested serialized replay session." }
-            ]
-        },
-        {
-            "name": "getSegmentData",
-            "description": "Returns an object for the specified session segment.",
-            "parameters": [
-                { "name": "id", "$ref": "SegmentIdentifier" }
-            ],
-            "returns": [
-                { "name": "segment", "$ref": "SessionSegment",  "optional": true, "description": "The requested serialized session segment." }
-            ]
-        }
-    ],
-    "events": [
-        {
-            "name": "captureStarted",
-            "description": "Fired when capture has started."
-        },
-        {
-            "name": "captureStopped",
-            "description": "Fired when capture has stopped."
-        },
-        {
-            "name": "playbackHitPosition",
-            "description": "Playback within the session has progressed up to this position, and is about to replay the input at the specified offset.",
-            "parameters": [
-                { "name": "position", "$ref": "ReplayPosition", "description": "The playback position that was hit." },
-                { "name": "timestamp", "type": "number", "description": "A timestamp for the event." }
-            ]
-        },
-        {
-            "name": "playbackStarted",
-            "description": "Fired when session playback has started."
-        },
-        {
-            "name": "playbackPaused",
-            "description": "Fired when session playback has paused, but not finished.",
-            "parameters": [
-                { "name": "position", "$ref": "ReplayPosition", "description": "The playback position immediately prior to where playback is paused." }
-            ]
-        },
-        {
-            "name": "playbackFinished",
-            "description": "Fired when session playback has stopped."
-        },
-        {
-            "name": "inputSuppressionChanged",
-            "description": "Fired when the replay controller starts or stops suppressing user inputs.",
-            "parameters": [
-                { "name": "willSuppress", "type": "boolean", "description": "Whether user inputs will be suppressed during playback." }
-            ]
-        },
-        {
-            "name": "sessionCreated",
-            "description": "Fired when a new replay session is created",
-            "parameters": [
-                { "name": "id", "$ref": "SessionIdentifier", "description": "Identifier for the created session." }
-            ]
-        },
-        {
-            "name": "sessionModified",
-            "description": "Fired when a session's segments have changed.",
-            "parameters": [
-                { "name": "id", "$ref": "SessionIdentifier", "description": "Identifier for the session the segment was added to." }
-            ]
-        },
-        {
-            "name": "sessionRemoved",
-            "description": "Fired when a replay session is removed and can no longer be loaded.",
-            "parameters": [
-                { "name": "id", "$ref": "SessionIdentifier", "description": "Identifier for the removed session." }
-            ]
-        },
-        {
-            "name": "sessionLoaded",
-            "description": "Fired when a replay session is loaded.",
-            "parameters": [
-                { "name": "id", "$ref": "SessionIdentifier", "description": "Identifier for the loaded session." }
-            ]
-        },
-        {
-            "name": "segmentCreated",
-            "description": "Fired when a new session segment is created.",
-            "parameters": [
-                { "name": "id", "$ref": "SegmentIdentifier", "description": "Identifier for the created session segment." }
-            ]
-        },
-        {
-            "name": "segmentRemoved",
-            "description": "Fired when a session segment is removed and can no longer be replayed as part of a session.",
-            "parameters": [
-                { "name": "id", "$ref": "SegmentIdentifier", "description": "Identifier for the removed session segment." }
-            ]
-        },
-        {
-            "name": "segmentCompleted",
-            "description": "Fired when a session segment is completed and can no longer have inputs added to it.",
-            "parameters": [
-                { "name": "id", "$ref": "SegmentIdentifier", "description": "Identifier for the completed session segment." }
-            ]
-        },
-        {
-            "name": "segmentLoaded",
-            "description": "Fired when a segment is loaded.",
-            "parameters": [
-                { "name": "segmentIdentifier", "$ref": "SegmentIdentifier", "description": "Id for the loaded segment." }
-            ]
-        },
-        {
-            "name": "segmentUnloaded",
-            "description": "Fired when a segment is unloaded."
-        }
-    ]
-}
diff --git a/Source/JavaScriptCore/replay/EmptyInputCursor.h b/Source/JavaScriptCore/replay/EmptyInputCursor.h
deleted file mode 100644 (file)
index c47e64c..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-
-#include "InputCursor.h"
-#include <wtf/Assertions.h>
-#include <wtf/Noncopyable.h>
-
-namespace JSC {
-
-class EmptyInputCursor final : public InputCursor {
-    WTF_MAKE_NONCOPYABLE(EmptyInputCursor);
-public:
-    virtual ~EmptyInputCursor() { }
-
-    static Ref<EmptyInputCursor> create()
-    {
-        return adoptRef(*new EmptyInputCursor());
-    }
-
-    bool isCapturing() const override { return false; }
-    bool isReplaying() const override { return false; }
-
-    NondeterministicInputBase* uncheckedLoadInput(InputQueue) override
-    {
-        ASSERT_NOT_REACHED();
-        return nullptr;
-    }
-
-    void storeInput(std::unique_ptr<NondeterministicInputBase>) override
-    {
-        ASSERT_NOT_REACHED();
-    }
-
-protected:
-    NondeterministicInputBase* loadInput(InputQueue, const String&) override
-    {
-        ASSERT_NOT_REACHED();
-        return nullptr;
-    }
-
-private:
-    EmptyInputCursor() { }
-};
-
-} // namespace JSC
-
-using JSC::EmptyInputCursor;
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/EncodedValue.cpp b/Source/JavaScriptCore/replay/EncodedValue.cpp
deleted file mode 100644 (file)
index 7924528..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright (C) 2013 University of Washington. All rights reserved.
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "EncodedValue.h"
-
-#if ENABLE(WEB_REPLAY)
-
-#include "InspectorValues.h"
-#include <wtf/text/Base64.h>
-
-using namespace Inspector;
-
-namespace JSC {
-
-RefPtr<InspectorObject> EncodedValue::asObject()
-{
-    RefPtr<InspectorObject> result;
-    bool castSucceeded = m_value->asObject(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-RefPtr<InspectorArray> EncodedValue::asArray()
-{
-    RefPtr<InspectorArray> result;
-    bool castSucceeded = m_value->asArray(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-EncodedValue EncodingTraits<Vector<char>>::encodeValue(const Vector<char>& buffer)
-{
-    return EncodedValue::createString(base64Encode(buffer));
-}
-
-bool EncodingTraits<Vector<char>>::decodeValue(EncodedValue& encodedBuffer, Vector<char>& decodedValue)
-{
-    return base64Decode(encodedBuffer.convertTo<String>(), decodedValue);
-}
-
-template<> EncodedValue ScalarEncodingTraits<bool>::encodeValue(const bool& value)
-{
-    return EncodedValue(InspectorValue::create(value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<double>::encodeValue(const double& value)
-{
-    return EncodedValue(InspectorValue::create(value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<float>::encodeValue(const float& value)
-{
-    return EncodedValue(InspectorValue::create((double)value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<int32_t>::encodeValue(const int32_t& value)
-{
-    return EncodedValue(InspectorValue::create((double)value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<int64_t>::encodeValue(const int64_t& value)
-{
-    return EncodedValue(InspectorValue::create((double)value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<uint32_t>::encodeValue(const uint32_t& value)
-{
-    return EncodedValue(InspectorValue::create((double)value));
-}
-
-template<> EncodedValue ScalarEncodingTraits<uint64_t>::encodeValue(const uint64_t& value)
-{
-    return EncodedValue(InspectorValue::create((double)value));
-}
-
-template<> bool EncodedValue::convertTo<bool>()
-{
-    bool result;
-    bool castSucceeded = m_value->asBoolean(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> double EncodedValue::convertTo<double>()
-{
-    double result;
-    bool castSucceeded = m_value->asDouble(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> float EncodedValue::convertTo<float>()
-{
-    float result;
-    bool castSucceeded = m_value->asDouble(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> int32_t EncodedValue::convertTo<int32_t>()
-{
-    int32_t result;
-    bool castSucceeded = m_value->asInteger(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> int64_t EncodedValue::convertTo<int64_t>()
-{
-    int64_t result;
-    bool castSucceeded = m_value->asInteger(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> uint32_t EncodedValue::convertTo<uint32_t>()
-{
-    uint32_t result;
-    bool castSucceeded = m_value->asInteger(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> uint64_t EncodedValue::convertTo<uint64_t>()
-{
-    uint64_t result;
-    bool castSucceeded = m_value->asInteger(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<> String EncodedValue::convertTo<String>()
-{
-    String result;
-    bool castSucceeded = m_value->asString(result);
-    ASSERT_UNUSED(castSucceeded, castSucceeded);
-
-    return result;
-}
-
-template<>
-void EncodedValue::put<EncodedValue>(const String& key, const typename EncodingTraits<EncodedValue>::DecodedType& value)
-{
-    asObject()->setValue(key, value.m_value.copyRef());
-}
-
-template<>
-void EncodedValue::append<EncodedValue>(const typename EncodingTraits<EncodedValue>::DecodedType& value)
-{
-    asArray()->pushValue(value.m_value.copyRef());
-}
-
-template<>
-bool EncodedValue::get<EncodedValue>(const String& key, typename EncodingTraits<EncodedValue>::DecodedType& decodedValue)
-{
-    RefPtr<Inspector::InspectorValue> value;
-    if (!asObject()->getValue(key, value))
-        return false;
-
-    decodedValue = EncodedValue(WTFMove(value));
-    return true;
-}
-
-
-}; // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/EncodedValue.h b/Source/JavaScriptCore/replay/EncodedValue.h
deleted file mode 100644 (file)
index 9fb1782..0000000
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * Copyright (C) 2013 University of Washington. All rights reserved.
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-
-#include "InspectorValues.h"
-#include <wtf/Forward.h>
-#include <wtf/Vector.h>
-
-namespace JSC {
-
-class NondeterministicInputBase;
-template<typename T> struct EncodingTraits;
-
-class EncodedValue final {
-public:
-    explicit EncodedValue(RefPtr<Inspector::InspectorValue>&& value)
-        : m_value(value) { }
-
-    EncodedValue()
-        : m_value(nullptr) { }
-
-    static EncodedValue createObject()
-    {
-        return EncodedValue(Inspector::InspectorObject::create());
-    }
-
-    static EncodedValue createArray()
-    {
-        return EncodedValue(Inspector::InspectorArray::create());
-    }
-
-    static EncodedValue createString(const String& value)
-    {
-        return EncodedValue(Inspector::InspectorValue::create(value));
-    }
-
-    static EncodedValue createString(const char* value)
-    {
-        return EncodedValue(Inspector::InspectorValue::create(value));
-    }
-
-    template<typename T>
-    void put(const String&, const typename EncodingTraits<T>::DecodedType&);
-
-    template<typename T>
-    void append(const typename EncodingTraits<T>::DecodedType&);
-
-    template<typename T> bool get(const String&, typename EncodingTraits<T>::DecodedType&);
-    template<typename T> bool get(const String&, std::unique_ptr<typename EncodingTraits<T>::DecodedType>&);
-
-    template<typename T> T convertTo();
-
-    JS_EXPORT_PRIVATE RefPtr<Inspector::InspectorObject> asObject();
-    JS_EXPORT_PRIVATE RefPtr<Inspector::InspectorArray> asArray();
-
-private:
-    RefPtr<Inspector::InspectorValue> m_value;
-};
-
-template<> JS_EXPORT_PRIVATE bool EncodedValue::convertTo<bool>();
-template<> JS_EXPORT_PRIVATE double EncodedValue::convertTo<double>();
-template<> JS_EXPORT_PRIVATE float EncodedValue::convertTo<float>();
-template<> JS_EXPORT_PRIVATE int32_t EncodedValue::convertTo<int32_t>();
-template<> JS_EXPORT_PRIVATE int64_t EncodedValue::convertTo<int64_t>();
-template<> JS_EXPORT_PRIVATE uint32_t EncodedValue::convertTo<uint32_t>();
-template<> JS_EXPORT_PRIVATE uint64_t EncodedValue::convertTo<uint64_t>();
-template<> JS_EXPORT_PRIVATE String EncodedValue::convertTo<String>();
-
-template<typename T>
-struct EncodingTraits {
-    typedef T DecodedType;
-
-    static EncodedValue encodeValue(const DecodedType&);
-
-    static bool decodeValue(EncodedValue&, DecodedType&);
-    static bool decodeValue(EncodedValue&, std::unique_ptr<DecodedType>&);
-};
-
-template<typename T, size_t inlineCapacity, typename OverflowHandler>
-struct EncodingTraits<Vector<T, inlineCapacity, OverflowHandler>> {
-    typedef Vector<typename EncodingTraits<T>::DecodedType, inlineCapacity, OverflowHandler> DecodedType;
-
-    static EncodedValue encodeValue(const DecodedType& vectorOfValues)
-    {
-        EncodedValue encodedVector = EncodedValue::createArray();
-        for (const typename EncodingTraits<T>::DecodedType& value : vectorOfValues)
-            encodedVector.append<T>(value);
-
-        return encodedVector;
-    }
-
-    static bool decodeValue(EncodedValue& encodedVector, DecodedType& decodedValue)
-    {
-        RefPtr<Inspector::InspectorArray> inspectorArray = encodedVector.asArray();
-        decodedValue = Vector<typename EncodingTraits<T>::DecodedType, inlineCapacity, OverflowHandler>(inspectorArray->length());
-        for (size_t i = 0; i < inspectorArray->length(); ++i) {
-            EncodedValue encodedElement(inspectorArray->get(i));
-            if (!EncodingTraits<T>::decodeValue(encodedElement, decodedValue.at(i)))
-                return false;
-        }
-        return true;
-    }
-};
-
-template<> struct EncodingTraits<EncodedValue> {
-    typedef EncodedValue DecodedType;
-    // We should never attempt to decode or encode an encoded value,
-    // so encodeValue and decodeValue are intentionally omitted here.
-};
-
-// Specialize byte vectors to use base64 encoding.
-template<> struct EncodingTraits<Vector<char>> {
-    typedef Vector<char> DecodedType;
-    static EncodedValue encodeValue(const DecodedType&);
-    static bool decodeValue(EncodedValue&, DecodedType&);
-};
-
-template<typename T>
-struct ScalarEncodingTraits {
-    typedef T DecodedType;
-
-    static JS_EXPORT_PRIVATE EncodedValue encodeValue(const DecodedType& decodedValue);
-    static bool decodeValue(EncodedValue& encodedValue, DecodedType& decodedValue)
-    {
-        decodedValue = encodedValue.convertTo<DecodedType>();
-        return true;
-    }
-};
-
-template<> struct EncodingTraits<bool> : public ScalarEncodingTraits<bool> { };
-template<> struct EncodingTraits<double> : public ScalarEncodingTraits<double> { };
-template<> struct EncodingTraits<float> : public ScalarEncodingTraits<float> { };
-template<> struct EncodingTraits<int32_t> : public ScalarEncodingTraits<int32_t> { };
-template<> struct EncodingTraits<int64_t> : public ScalarEncodingTraits<int64_t> { };
-template<> struct EncodingTraits<uint32_t> : public ScalarEncodingTraits<uint32_t> { };
-template<> struct EncodingTraits<uint64_t> : public ScalarEncodingTraits<uint64_t> { };
-
-template<> struct EncodingTraits<String> : public ScalarEncodingTraits<String> {
-    static EncodedValue encodeValue(const String& value)
-    {
-        return EncodedValue::createString(value);
-    }
-};
-
-// Base cases for loading and storing values.
-template<> JS_EXPORT_PRIVATE
-void EncodedValue::put<EncodedValue>(const String& key, const typename EncodingTraits<EncodedValue>::DecodedType&);
-
-template<> JS_EXPORT_PRIVATE
-void EncodedValue::append<EncodedValue>(const typename EncodingTraits<EncodedValue>::DecodedType&);
-
-template<> JS_EXPORT_PRIVATE
-bool EncodedValue::get<EncodedValue>(const String& key, typename EncodingTraits<EncodedValue>::DecodedType&);
-
-// Load and store types with an accompanying EncodingTraits implementation.
-template<typename T>
-void EncodedValue::put(const String& key, const typename EncodingTraits<T>::DecodedType& value)
-{
-    EncodedValue encodedValue = EncodingTraits<T>::encodeValue(value);
-    put<EncodedValue>(key, encodedValue);
-}
-
-template<typename T>
-void EncodedValue::append(const typename EncodingTraits<T>::DecodedType& value)
-{
-    EncodedValue encodedValue = EncodingTraits<T>::encodeValue(value);
-    append<EncodedValue>(encodedValue);
-}
-
-template<typename T>
-bool EncodedValue::get(const String& key, typename EncodingTraits<T>::DecodedType& decodedValue)
-{
-    EncodedValue encodedValue;
-    if (!get<EncodedValue>(key, encodedValue))
-        return false;
-
-    return EncodingTraits<T>::decodeValue(encodedValue, decodedValue);
-}
-
-template<typename T>
-bool EncodedValue::get(const String& key, std::unique_ptr<typename EncodingTraits<T>::DecodedType>& decodedValue)
-{
-    EncodedValue encodedValue;
-    if (!get<EncodedValue>(key, encodedValue))
-        return false;
-
-    return EncodingTraits<T>::decodeValue(encodedValue, decodedValue);
-}
-
-} // namespace JSC
-
-using JSC::EncodedValue;
-using JSC::EncodingTraits;
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/InputCursor.h b/Source/JavaScriptCore/replay/InputCursor.h
deleted file mode 100644 (file)
index 02a20e5..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2011, 2012 University of Washington. All rights reserved.
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-
-#include "NondeterministicInput.h"
-#include <wtf/Noncopyable.h>
-#include <wtf/RefCounted.h>
-
-namespace JSC {
-
-class InputCursor : public RefCounted<InputCursor> {
-    WTF_MAKE_NONCOPYABLE(InputCursor);
-public:
-    InputCursor() { }
-    virtual ~InputCursor() { }
-
-    virtual bool isCapturing() const = 0;
-    virtual bool isReplaying() const = 0;
-
-    void setWithinEventLoopInputExtent(bool withinEventLoopInputExtent)
-    {
-        // We can be within two input extents when a nested run loop
-        // processes additional user inputs while the debugger is paused.
-        // However, the debugger should not pause when capturing, and we
-        // should not replay event loop inputs while in a nested run loop.
-        ASSERT(m_withinEventLoopInputExtent != withinEventLoopInputExtent || !(isCapturing() || isReplaying()));
-        m_withinEventLoopInputExtent = withinEventLoopInputExtent;
-    }
-
-    bool withinEventLoopInputExtent() const { return m_withinEventLoopInputExtent; }
-
-    template <class InputType, class... Args> inline
-    void appendInput(Args&&... args)
-    {
-        InputType* rawInput = WTF::safeCast<InputType*>(new InputType(std::forward<Args>(args)...));
-        return storeInput(std::unique_ptr<NondeterministicInputBase>(rawInput));
-    }
-
-    template <class InputType> inline
-    InputType* fetchInput()
-    {
-        return static_cast<InputType*>(loadInput(InputTraits<InputType>::queue(), InputTraits<InputType>::type()));
-    }
-
-    virtual void storeInput(std::unique_ptr<NondeterministicInputBase>) = 0;
-    virtual NondeterministicInputBase* uncheckedLoadInput(InputQueue) = 0;
-protected:
-    virtual NondeterministicInputBase* loadInput(InputQueue, const String&) = 0;
-
-private:
-    bool m_withinEventLoopInputExtent {false};
-};
-
-} // namespace JSC
-
-using JSC::InputCursor;
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/JSInputs.json b/Source/JavaScriptCore/replay/JSInputs.json
deleted file mode 100644 (file)
index fa5c004..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "bool", "mode": "SCALAR" },
-            { "name": "double", "mode": "SCALAR" },
-            { "name": "uint32_t", "mode": "SCALAR", "description": "Unsigned 32-bit integer." },
-            { "name": "uint64_t", "mode": "SCALAR", "description": "Unsigned 64-bit integer." },
-            { "name": "int32_t", "mode": "SCALAR", "description": "Signed 32-bit integer." },
-            { "name": "int64_t", "mode": "SCALAR", "description": "Signed 64-bit integer." }
-        ],
-
-        "WTF": [
-            {
-                "name": "String", "mode": "HEAVY_SCALAR",
-                "header": "wtf/text/WTFString.h"
-            }
-        ],
-
-        "JavaScriptCore": [
-            {
-                "name": "InputQueue", "mode": "SCALAR", "storage": "uint8_t",
-                "flags": ["ENUM_CLASS"],
-                "values": ["EventLoopInput", "LoaderMemoizedData", "ScriptMemoizedData", "Count"],
-                "header": "replay/NondeterministicInput.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "JavaScriptCore": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "currentTime", "type": "double" }
-                ]
-            },
-            {
-                "name": "SetRandomSeed",
-                "description": "Sets the PRNG seed used by Math.random().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "randomSeed", "type": "uint64_t" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/NondeterministicInput.h b/Source/JavaScriptCore/replay/NondeterministicInput.h
deleted file mode 100644 (file)
index 92f8b63..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright (C) 2011, 2012 University of Washington. All rights reserved.
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-
-#include <wtf/Forward.h>
-#include <wtf/Noncopyable.h>
-
-namespace JSC {
-
-class EncodedValue;
-
-enum class InputQueue {
-    ScriptMemoizedData = 0,
-    LoaderMemoizedData = 1,
-    EventLoopInput = 2,
-    Count = 3
-};
-
-template<typename InputType>
-struct JS_EXPORT_PRIVATE InputTraits {
-    static InputQueue queue();
-    static String& type();
-
-    static void encode(EncodedValue& encodedInput, InputType& decodedInput);
-    static bool decode(EncodedValue& encodedInput, std::unique_ptr<InputType>& decodedInput);
-};
-
-class NondeterministicInputBase {
-    WTF_MAKE_NONCOPYABLE(NondeterministicInputBase);
-public:
-    NondeterministicInputBase() { }
-    virtual ~NondeterministicInputBase() { }
-
-    virtual const String& type() const = 0;
-    virtual InputQueue queue() const = 0;
-};
-
-template<typename InputType>
-class NondeterministicInput : public NondeterministicInputBase {
-public:
-    const String& type() const override
-    {
-        return InputTraits<InputType>::type();
-    }
-
-    InputQueue queue() const override
-    {
-        return InputTraits<InputType>::queue();
-    }
-};
-
-} // namespace JSC
-
-using JSC::InputQueue;
-using JSC::InputTraits;
-using JSC::NondeterministicInput;
-using JSC::NondeterministicInputBase;
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py b/Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
deleted file mode 100755 (executable)
index 0441ed5..0000000
+++ /dev/null
@@ -1,1070 +0,0 @@
-#!/usr/bin/env python
-# Copyright (c) 2014 Apple Inc. All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-#     * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#     * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import os.path
-import re
-import sys
-import string
-from string import Template
-import optparse
-import logging
-from CodeGeneratorReplayInputsTemplates import Templates
-
-try:
-    import json
-except ImportError:
-    import simplejson as json
-
-# Configuration values are first looked up in the framework configuration,
-# and then in the global configuration if there is no framework-specific value.
-GLOBAL_CONFIG = {
-    "baseFilename": "ReplayInputs",
-    "guardCondition": "ENABLE(WEB_REPLAY)",
-    "traitsFrameworkName": "JavaScriptCore",
-
-    # These are formatted as ([allowed_frameworks], (framework, header_path)).
-    # The generator can figure out how to format the includes.
-    "headerIncludes": [
-        (["WebCore"],
-            ("WebCore", "replay/EventLoopInput.h")
-        ),
-        (["JavaScriptCore", "WebCore"],
-            ("JavaScriptCore", "replay/EncodedValue.h")
-        ),
-        (["JavaScriptCore"],
-            ("JavaScriptCore", "replay/NondeterministicInput.h")
-        ),
-        (["JavaScriptCore", "WebCore"],
-            ("WTF", "wtf/TypeCasts.h")
-        ),
-        (["WebCore"],
-            ("WTF", "wtf/text/WTFString.h")
-        ),
-
-        # Testing fixtures.
-        (["Test"],
-            ("WebCore", "platform/ExternalNamespaceHeaderIncludeDummy.h")
-        ),
-        (["Test"],
-            ("Test", "platform/InternalNamespaceHeaderIncludeDummy.h")
-        )
-    ],
-
-    "implIncludes": [
-        (["WebCore"],
-            ("WebCore", "replay/SerializationMethods.h")
-        ),
-        (["WebCore", "JavaScriptCore"],
-            ("JavaScriptCore", "inspector/InspectorValues.h")
-        ),
-        (["WebCore", "JavaScriptCore"],
-            ("WTF", "wtf/NeverDestroyed.h")
-        ),
-
-        # Testing fixtures.
-        (["Test"],
-            ("WebCore", "platform/ExternalNamespaceImplIncludeDummy.h")
-        ),
-        (["Test"],
-            ("Test", "platform/InternalNamespaceImplIncludeDummy.h")
-        )
-    ],
-}
-
-FRAMEWORK_CONFIG_MAP = {
-    "Global": {
-        "prefix": "",
-        "namespace": ""
-    },
-
-    "WTF": {
-        "prefix": "WTF",
-        "namespace": "WTF",
-    },
-    "JavaScriptCore": {
-        "prefix": "JS",
-        "namespace": "JSC",
-        "exportMacro": "JS_EXPORT_PRIVATE",
-    },
-    "WebCore": {
-        "prefix": "Web",
-        "namespace": "WebCore",
-        "exportMacro": "WEBCORE_EXPORT"
-    },
-    # Used for bindings tests.
-    "Test": {
-        "prefix": "Test",
-        "namespace": "Test",
-        "exportMacro": "TEST_EXPORT_MACRO"
-    }
-}
-
-# These settings are specific to an input queue.
-QUEUE_CONFIG_MAP = {
-    "SCRIPT_MEMOIZED": {
-        "enumValue": "ScriptMemoizedData",
-        "baseClass": "NondeterministicInput<%s>",
-    },
-    "LOADER_MEMOIZED": {
-        "enumValue": "LoaderMemoizedData",
-        "baseClass": "NondeterministicInput<%s>",
-    },
-    "EVENT_LOOP": {
-        "enumValue": "EventLoopInput",
-        "baseClass": "EventLoopInput<%s>",
-    },
-}
-
-# Use a global logger, which normally only logs errors.
-# It can be configured to log debug messages from the CLI.
-logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.ERROR)
-log = logging.getLogger('global')
-
-
-# Model classes, which transliterate JSON input.
-class ParseException(Exception):
-    pass
-
-
-class TypecheckException(Exception):
-    pass
-
-
-class Framework:
-    def __init__(self, name):
-        self._settings = FRAMEWORK_CONFIG_MAP[name]
-        self.name = name
-
-    def setting(self, key, default=''):
-        return self._settings.get(key, default)
-
-    @staticmethod
-    def fromString(frameworkString):
-        if frameworkString == "Global":
-            return Frameworks.Global
-
-        if frameworkString == "WTF":
-            return Frameworks.WTF
-
-        if frameworkString == "JavaScriptCore":
-            return Frameworks.JavaScriptCore
-
-        if frameworkString == "WebCore":
-            return Frameworks.WebCore
-
-        if frameworkString == "Test":
-            return Frameworks.Test
-
-        raise ParseException("Unknown framework: " + frameworkString)
-
-
-class Frameworks:
-    Global = Framework("Global")
-    WTF = Framework("WTF")
-    JavaScriptCore = Framework("JavaScriptCore")
-    WebCore = Framework("WebCore")
-    Test = Framework("Test")
-
-
-class InputQueue:
-    def __init__(self, settings):
-        self._settings = settings
-
-    def setting(self, key, default=''):
-        return self._settings.get(key, default)
-
-    @staticmethod
-    def fromString(queueString):
-        if queueString == "SCRIPT_MEMOIZED":
-            return InputQueues.SCRIPT_MEMOIZED
-
-        if queueString == "LOADER_MEMOIZED":
-            return InputQueues.LOADER_MEMOIZED
-
-        if queueString == "EVENT_LOOP":
-            return InputQueues.EVENT_LOOP
-
-        raise ParseException("Unknown input queue: " + queueString)
-
-
-class InputQueues:
-    SCRIPT_MEMOIZED = InputQueue(QUEUE_CONFIG_MAP["SCRIPT_MEMOIZED"])
-    LOADER_MEMOIZED = InputQueue(QUEUE_CONFIG_MAP["LOADER_MEMOIZED"])
-    EVENT_LOOP = InputQueue(QUEUE_CONFIG_MAP["EVENT_LOOP"])
-
-
-class Input:
-    def __init__(self, name, description, framework, queueString, flags, guard=None):
-        self.name = name
-        self.description = description
-        self.framework = framework
-        self.queue = InputQueue.fromString(queueString)
-        self._flags = flags
-        self.guard = guard
-        self.members = []  # names should be unique, but ordered.
-
-    def setting(self, key, default=''):
-        if key in self._flags:
-            return True
-
-        return self.queue.setting(key, default)
-
-
-class InputMember:
-    def __init__(self, memberName, typeName, flags=[]):
-        self.memberName = memberName
-        self.typeName = typeName
-        self._flags = flags
-
-    def has_flag(self, key, default=''):
-        return key in self._flags
-
-
-class TypeMode:
-    def __init__(self, name):
-        self._name = name
-
-    @staticmethod
-    def fromString(modeString):
-        modeString = modeString.upper()
-        if modeString == 'SCALAR':
-            return TypeModes.SCALAR
-        if modeString == 'HEAVY_SCALAR':
-            return TypeModes.HEAVY_SCALAR
-        if modeString == 'OWNED':
-            return TypeModes.OWNED
-        if modeString == 'SHARED':
-            return TypeModes.SHARED
-        if modeString == 'VECTOR':
-            return TypeModes.VECTOR
-
-        raise ParseException("Unknown type mode: " + modeString)
-
-
-class TypeModes:
-    # Copy for assignment and for getter
-    SCALAR = TypeMode("SCALAR")
-    # Copy for assignment, pass by reference for getter
-    HEAVY_SCALAR = TypeMode("HEAVY_SCALAR")
-    # Move for assignment, pass by reference for getter
-    OWNED = TypeMode("OWNED")
-    # Copy a RefPtr for assignment and getter
-    SHARED = TypeMode("SHARED")
-    # Move operator for assignment, pass by reference for getter
-    VECTOR = TypeMode("VECTOR")
-
-
-class Type:
-    def __init__(self, name, mode, framework, header, enclosing_class, values, guard_values_map, underlying_storage, flags, guard=None):
-        self._name = name
-        self.mode = mode
-        self.framework = framework
-        self.header = header
-        self.enclosing_class = enclosing_class
-        self.values = values
-        self.guard_values_map = guard_values_map
-        self.underlying_storage = underlying_storage
-        self._flags = flags
-        self.guard = guard
-
-    def __eq__(self, other):
-        return self.type_name() == other.type_name() and self.mode == other.mode
-
-    def __hash__(self):
-        return self._name.__hash__()
-
-    def has_flag(self, flagString):
-        return flagString in self._flags
-
-    def is_struct(self):
-        return self.has_flag("STRUCT")
-
-    def is_enum_declaration(self):
-        return self.has_flag("ENUM")
-
-    def is_enum_class_declaration(self):
-        return self.has_flag("ENUM_CLASS")
-
-    def is_option_set(self):
-        return self.has_flag("OPTION_SET")
-
-    def is_enumerable(self):
-        return self.is_enum_declaration() or self.is_enum_class_declaration() or self.is_option_set()
-
-    def declaration_kind(self):
-        if self.is_enum_declaration():
-            return "enum"
-        elif self.is_enum_class_declaration():
-            return "enum class"
-        # If the enumerable is an OptionSet<T>, then T must be forward declared as an enum class.
-        elif self.is_option_set():
-            return "enum class"
-        elif self.is_struct():
-            return "struct"
-        else:
-            return "class"
-
-    def qualified_prefix(self):
-        components = []
-        if self.framework != Frameworks.Global:
-            components.append(self.framework.setting('namespace'))
-        if self.enclosing_class is not None:
-            components.append(self.enclosing_class)
-        components.append("")
-        return "::".join(components)
-
-    def type_name(self, qualified=False):
-        if qualified:
-            return "%s%s" % (self.qualified_prefix(), self._name)
-        elif self.enclosing_class is not None:
-            return "%s::%s" % (self.enclosing_class, self._name)
-        else:
-            return self._name
-
-    def storage_type(self, qualified=False):
-        if self.mode == TypeModes.OWNED:
-            return "std::unique_ptr<%s>" % self.type_name(qualified)
-        elif self.mode == TypeModes.SHARED:
-            return "RefPtr<%s>" % self.type_name(qualified)
-        else:
-            return self.type_name(qualified)
-
-    def borrow_type(self, qualified=False):
-        if self.mode == TypeModes.SCALAR:
-            return self.type_name(qualified)
-        elif self.mode == TypeModes.SHARED:
-            return "RefPtr<%s>" % self.type_name(qualified)
-        else:
-            return "const %s&" % self.type_name(qualified)
-
-    def argument_type(self, qualified=False):
-        if self.mode == TypeModes.SHARED:
-            return "RefPtr<%s>&&" % self.type_name(qualified)
-        else:
-            return self.storage_type()
-
-    def encoding_type_argument(self, qualified=False):
-        return self.type_name(qualified=qualified)
-
-
-def check_for_required_properties(props, obj, what):
-    for prop in props:
-        if prop not in obj:
-            raise ParseException("When parsing %s, required property missing: %s" % (what, prop))
-
-
-class VectorType(Type):
-    def __init__(self, element_type):
-        self._element_type = element_type
-        self.mode = TypeModes.VECTOR
-        self.framework = element_type.framework
-        self.enclosing_class = None
-
-    def has_flag(self):
-        return False
-
-    def is_struct(self):
-        return False
-
-    def is_enum_declaration(self):
-        return False
-
-    def is_enum_class_declaration(self):
-        return False
-
-    def is_option_set(self):
-        return False
-
-    def qualified_prefix(self):
-        return ""
-
-    def type_name(self, qualified=False):
-        return "Vector<%s>" % self._element_type.storage_type(qualified=qualified)
-
-    def encoding_type_argument(self, qualified=False):
-        return "Vector<%s>" % self._element_type.type_name(qualified=qualified)
-
-    def argument_type(self, qualified=False):
-        return self.type_name(qualified=qualified) + "&"
-
-
-class InputsModel:
-    def __init__(self):
-        self.inputs = []
-        self.types = []
-
-        # Types have associated frameworks and are in their namespace, but within the specification
-        # file types are in a flat namespace. Types with the same name are not allowed.
-        self.types_by_name = {}
-        self.inputs_by_name = {}
-
-    def enumerable_types(self):
-        _enumerables = filter(lambda x: x.is_enumerable(), self.types)
-        return sorted(_enumerables, key=lambda _enumerable: _enumerable.type_name())
-
-    def get_type_for_member(self, member):
-        if member.has_flag("VECTOR"):
-            return VectorType(self.types_by_name.get(member.typeName))
-        else:
-            return self.types_by_name.get(member.typeName)
-
-    def parse_specification(self, json):
-        if 'types' in json:
-            if not isinstance(json['types'], dict):
-                raise ParseException("Malformed specification: types is not a dict of framework->type list")
-
-            for framework_name, type_list in json['types'].iteritems():
-                if not isinstance(type_list, list):
-                    raise ParseException("Malformed specification: type list for framework %s is not a list" % framework_name)
-
-                framework = Framework.fromString(framework_name)
-                for _type in type_list:
-                    self.parse_type_with_framework(_type, framework)
-
-        if 'inputs' in json:
-            if not isinstance(json['inputs'], dict):
-                raise ParseException("Malformed specification: inputs is not a dict of framework->input list")
-
-            for framework_name, input_list in json['inputs'].iteritems():
-                if not isinstance(input_list, list):
-                    raise ParseException("Malformed specification: input list for framework %s is not a list" % framework_name)
-
-                framework = Framework.fromString(framework_name)
-                for _input in input_list:
-                    self.parse_input_with_framework(_input, framework)
-
-    def parse_type_with_framework(self, json, framework):
-        check_for_required_properties(['name', 'mode'], json, 'type')
-        if framework is not Frameworks.Global:
-            check_for_required_properties(['header'], json, 'non-global type')
-
-        type_name = json['name']
-        type_mode = TypeMode.fromString(json['mode'])
-        header = json.get('header')
-        enclosing_class = json.get('enclosing_class')
-        enumerable_values = json.get('values')
-        guarded_enumerable_values = json.get('guarded_values', {})
-        type_storage = json.get('storage')
-        type_flags = json.get('flags', [])
-        guard = json.get('guard', None)
-        _type = Type(type_name, type_mode, framework, header, enclosing_class, enumerable_values, guarded_enumerable_values, type_storage, type_flags, guard)
-        if _type.is_enumerable():
-            check_for_required_properties(['values'], json, 'enum')
-            if not isinstance(json['values'], list) or len(_type.values) == 0:
-                raise ParseException("Malformed specification: enumerable type %s does not supply a list of values" % type_name)
-
-            if _type.is_enum_declaration() and enclosing_class is None and type_storage is None:
-                raise ParseException("Could not parse enumerable type %s: C-style enum declarations not enclosed by a class must specify their storage type so they can be forward declared." % type_name)
-
-        self.types.append(_type)
-
-    def parse_input_with_framework(self, json, framework):
-        check_for_required_properties(['name', 'description', 'queue', 'members'], json, 'input')
-        _input = Input(json['name'], json['description'], framework, json['queue'], json.get('flags', []), json.get('guard'))
-        if isinstance(json['members'], list):
-            for member in json['members']:
-                check_for_required_properties(['name', 'type'], member, 'member')
-                _input.members.append(InputMember(member['name'], member['type'], member.get('flags', [])))
-
-        self.inputs.append(_input)
-
-    # Types cannot (yet) reference other types, so we can check references in one pass.
-    def resolve_types(self):
-        for _type in self.types:
-            self.typecheck_type(_type)
-
-        for _input in self.inputs:
-            self.typecheck_input(_input)
-
-    def typecheck_type(self, _type):
-        log.debug("typecheck type " + _type.type_name())
-
-        if _type.type_name() in self.types_by_name:
-            raise TypecheckException("Duplicate type with name: " + _type.type_name())
-
-        self.types_by_name[_type.type_name()] = _type
-
-    def typecheck_input(self, _input):
-        log.debug("typecheck input " + _input.name)
-
-        if _input.name in self.inputs_by_name:
-            raise TypecheckException("Duplicate input with name: " + _input.name)
-
-        seen_members = {}
-
-        for member in _input.members:
-            if member.memberName in seen_members:
-                raise TypecheckException("Duplicate input member with name: " + member.memberName)
-
-            self.typecheck_input_member(member, _input)
-            seen_members[member.memberName] = member
-
-        self.inputs_by_name[_input.name] = _input
-
-    def typecheck_input_member(self, input_member, _input):
-        log.debug("typecheck member '%s' of '%s'" % (input_member.memberName, _input.name))
-
-        if not input_member.typeName in self.types_by_name:
-            raise TypecheckException("Unknown type '%s' referenced by member '%s' of input '%s'" % (input_member.typeName, input_member.memberName, _input.name))
-
-
-# A writer that only updates file if it actually changed.
-class IncrementalFileWriter:
-    def __init__(self, filepath, force_output):
-        self._filepath = filepath
-        self._output = ""
-        self.force_output = force_output
-
-    def write(self, text):
-        self._output += text
-
-    def close(self):
-        text_changed = True
-        self._output = self._output.rstrip() + "\n"
-
-        try:
-            read_file = open(self._filepath, "r")
-            old_text = read_file.read()
-            read_file.close()
-            text_changed = old_text != self._output
-        except:
-            # Ignore, just overwrite by default
-            pass
-
-        if text_changed or self.force_output:
-            out_file = open(self._filepath, "w")
-            out_file.write(self._output)
-            out_file.close()
-
-
-def wrap_with_guard(contents, condition=None):
-    if condition is None:
-        return contents
-
-    return "\n".join([
-        "#if %s" % condition,
-        contents,
-        "#endif // %s" % condition
-    ])
-
-
-class Generator:
-    def __init__(self, model, target_framework_name, input_filepath, output_prefix):
-        self._model = model
-        self.target_framework = Framework.fromString(target_framework_name)
-        self.traits_framework = Framework.fromString(self.setting('traitsFrameworkName'))
-        self._input_filepath = input_filepath
-        self._output_prefix = output_prefix
-
-    def setting(self, key, default=''):
-        return self.target_framework.setting(key, GLOBAL_CONFIG.get(key, default))
-
-    def should_generate_item(self, item):
-        return item.framework is self.target_framework
-
-    # This does not account for any filename mangling performed on behalf of the test harness.
-    def output_filename(self, extension=None):
-        components = []
-        if len(self._output_prefix) > 0:
-            components.extend([self._output_prefix, '-'])
-
-        components.extend([self.setting('prefix'), self.setting('baseFilename')])
-
-        if extension is not None:
-            components.extend(['.', extension])
-
-        return "".join(components)
-
-    def write_output_files(self, _dir, force=False):
-        header_file = IncrementalFileWriter(os.path.join(_dir, self.output_filename('h')), force)
-        implementation_file = IncrementalFileWriter(os.path.join(_dir, self.output_filename('cpp')), force)
-
-        header_file.write(self.generate_header())
-        implementation_file.write(self.generate_implementation())
-
-        header_file.close()
-        implementation_file.close()
-
-    def generate_header(self):
-        enumerable_types_to_generate = filter(self.should_generate_item, self._model.enumerable_types())
-        inputs_to_generate = filter(self.should_generate_item, self._model.inputs)
-
-        template_arguments = {
-            'licenseBlock': self.generate_license(),
-            'filename': self.output_filename(),
-            'guardCondition': self.setting('guardCondition'),
-            'traitsNamespace': self.traits_framework.setting('namespace'),
-            'inputsNamespace': self.target_framework.setting('namespace'),
-            'includes': self.generate_includes(defaults=self.setting('headerIncludes')),
-            'typeForwardDeclarations': self.generate_type_forward_declarations(),
-            'inputForwardDeclarations': "\n".join([wrap_with_guard("class %s;", _input.guard) % _input.name for _input in inputs_to_generate]),
-            'inputClassDeclarations': "\n\n".join([self.generate_class_declaration(_input) for _input in inputs_to_generate]),
-            'inputTraitDeclarations': "\n\n".join([self.generate_input_trait_declaration(_input) for _input in inputs_to_generate]),
-            'inputTypeTraitDeclarations': "\n\n".join([self.generate_input_type_trait_declaration(_input) for _input in inputs_to_generate]),
-            'enumerableTypeTraitDeclarations': "\n\n".join([wrap_with_guard(self.generate_enumerable_type_trait_declaration(_type), _type.guard) for _type in enumerable_types_to_generate]),
-            'forEachMacro': self.generate_for_each_macro(),
-        }
-
-        return Template(Templates.HeaderSkeleton).substitute(template_arguments)
-
-    def generate_implementation(self):
-        enumerable_types_to_generate = filter(self.should_generate_item, self._model.enumerable_types())
-        inputs_to_generate = filter(self.should_generate_item, self._model.inputs)
-
-        template_arguments = {
-            'licenseBlock': self.generate_license(),
-            'filename': self.output_filename(),
-            'guardCondition': self.setting('guardCondition'),
-            'traitsNamespace': self.traits_framework.setting('namespace'),
-            'inputsNamespace': self.target_framework.setting('namespace'),
-            'includes': self.generate_includes(defaults=self.setting('implIncludes'), includes_for_types=True),
-            'inputClassImplementations': "\n\n".join([self.generate_class_implementation(_input) for _input in inputs_to_generate]),
-            'inputTraitImplementations': "\n\n".join([self.generate_input_trait_implementation(_input) for _input in inputs_to_generate]),
-            'enumerableTypeTraitImplementations': "\n\n".join([wrap_with_guard(self.generate_enumerable_type_trait_implementation(_type), _type.guard) for _type in enumerable_types_to_generate]),
-        }
-
-        return Template(Templates.ImplementationSkeleton).substitute(template_arguments)
-
-    def generate_license(self):
-        return Template(Templates.CopyrightBlock).substitute(None, inputFilename=os.path.basename(self._input_filepath))
-
-    def generate_includes(self, defaults=[], includes_for_types=False):
-        lines = set()
-
-        for _type in self._model.types:
-            # Types in the "global" framework are implicitly declared and available in all namespaces.
-            if _type.framework is Frameworks.Global:
-                continue
-            # For RefCounted types, we reverse when to include the header so that the destructor can be
-            # used in the header file.
-            include_for_destructor = _type.mode is TypeModes.SHARED
-            # Enum declarations within classes cannot be forward declared, so we include
-            # headers with the relevant class declaration.
-            include_for_enclosing_class = _type.enclosing_class is not None
-            # Include headers for types like URL and String which are copied, not owned or shared.
-            include_for_copyable_member = _type.mode is TypeModes.HEAVY_SCALAR
-            if (not includes_for_types) ^ (include_for_destructor or include_for_enclosing_class or include_for_copyable_member):
-                continue
-
-            if self.target_framework != _type.framework:
-                lines.add("#include <%s>" % _type.header)
-            else:
-                lines.add("#include \"%s\"" % os.path.basename(_type.header))
-
-        for entry in defaults:
-            (allowed_framework_names, data) = entry
-            (framework_name, header_path) = data
-
-            if self.target_framework.name not in allowed_framework_names:
-                continue
-            if self.target_framework.name != framework_name:
-                lines.add("#include <%s>" % header_path)
-            else:
-                lines.add("#include \"%s\"" % os.path.basename(header_path))
-
-        return "\n".join(sorted(list(lines)))
-
-    def generate_type_forward_declarations(self):
-        lines = []
-
-        decls_by_framework = {}
-        frameworks = [Framework.fromString(s) for s in FRAMEWORK_CONFIG_MAP.keys() if s != Frameworks.Global.name]
-        for framework in frameworks:
-            decls_by_framework[framework] = []
-
-        for _type in self._model.types:
-            if _type.framework not in frameworks:
-                continue
-            if _type.enclosing_class is not None:
-                continue
-            if _type.mode == TypeModes.HEAVY_SCALAR:
-                continue
-            if _type.mode == TypeModes.SCALAR and not _type.is_enumerable():
-                continue
-            if _type.is_enum_declaration():
-                declaration = "enum %s : %s;" % (_type.type_name(), _type.underlying_storage)
-            else:
-                declaration = "%s %s;" % (_type.declaration_kind(), _type.type_name())
-            decls_by_framework[_type.framework].append(declaration)
-
-        # Declare all namespaces explicitly, even if it's the main namespace.
-        for framework in frameworks:
-            if len(decls_by_framework[framework]) == 0:
-                continue
-
-            decls_by_framework[framework].sort()
-            lines.append("namespace %s {" % framework.setting('namespace'))
-            lines.extend(decls_by_framework[framework])
-            lines.append("}")
-            lines.append("")
-
-        return "\n".join(lines)
-
-    def generate_class_declaration(self, _input):
-        extra_declarations = []
-        if _input.queue == InputQueues.EVENT_LOOP:
-            extra_declarations.extend([
-                "",
-                "    // EventLoopInput API",
-                "    virtual void dispatch(ReplayController&) final;",
-            ])
-
-            if _input.setting('CREATE_FROM_PAGE'):
-                extra_declarations.extend([
-                    "    static std::unique_ptr<%s> createFromPage(const Page&);" % _input.name
-                ])
-
-        member_getters = [self.generate_input_member_getter(_member) for _member in _input.members]
-
-        member_declarations = [self.generate_input_member_declaration(_member) for _member in _input.members]
-        if len(member_declarations) > 0:
-            member_declarations.insert(0, "private:")
-
-        template_arguments = {
-            'inputConstructor': self.generate_input_constructor_declaration(_input),
-            'inputDestructor': self.generate_input_destructor_declaration(_input),
-            'inputName': _input.name,
-            'inputQueue': _input.setting('enumValue'),
-            'baseClass': _input.setting('baseClass') % _input.name,
-            'extraDeclarations': "\n".join(extra_declarations),
-            'memberGetters': "\n".join(member_getters),
-            'memberDeclarations': "\n".join(member_declarations),
-        }
-
-        return wrap_with_guard(Template(Templates.InputClassDeclaration).substitute(template_arguments), _input.guard)
-
-    def generate_input_constructor_declaration(self, _input):
-        formals_list = self.generate_constructor_formals_list(_input)
-        terms = []
-        if self.setting('exportMacro'):
-            terms.append(self.setting('exportMacro'))
-        terms.append("%s(%s)" % (_input.name, formals_list))
-        return "    %s;" % " ".join(terms)
-
-    def generate_input_destructor_declaration(self, _input):
-        return "    virtual ~%s();" % _input.name
-
-    def generate_input_member_getter(self, _member):
-        member_type = self._model.get_type_for_member(_member)
-        return "    %s %s() const { return %s; }" % (member_type.borrow_type(), _member.memberName, self.generate_member_borrow_expression(_member))
-
-    def generate_input_member_declaration(self, _member):
-        member_type = self._model.get_type_for_member(_member)
-        return "    %s m_%s;" % (member_type.storage_type(), _member.memberName)
-
-    def generate_input_member_tuples(self, _input):
-        return [(_member, self._model.get_type_for_member(_member)) for _member in _input.members]
-
-    def qualified_input_name(self, _input, forceQualified=False):
-        if forceQualified or self.target_framework != self.traits_framework:
-            return "%s::%s" % (self.target_framework.setting('namespace'), _input.name)
-        else:
-            return _input.name
-
-    def generate_input_trait_declaration(self, _input):
-        decl_type = ['struct']
-        if len(self.setting('exportMacro')) > 0:
-            decl_type.append(self.setting('exportMacro'))
-
-        template_arguments = {
-            'structOrClass': " ".join(decl_type),
-            'queueType': _input.queue.setting('enumValue'),
-            'qualifiedInputName': self.qualified_input_name(_input),
-        }
-
-        return wrap_with_guard(Template(Templates.InputTraitsDeclaration).substitute(template_arguments), _input.guard)
-
-    def generate_input_type_trait_declaration(self, _input):
-        template_arguments = {
-            'qualifiedInputName': self.qualified_input_name(_input, forceQualified=True),
-        }
-
-        return wrap_with_guard(Template(Templates.InputTypeTraitsDeclaration).substitute(template_arguments), _input.guard)
-
-    def generate_enumerable_type_trait_declaration(self, _type):
-        decl_type = ['struct']
-        if len(self.setting('exportMacro')) > 0:
-            decl_type.append(self.setting('exportMacro'))
-
-        should_qualify_type = _type.framework != self.traits_framework
-        decoded_type = _type.type_name(qualified=should_qualify_type)
-        if _type.is_option_set():
-            decoded_type = "OptionSet<%s>" % decoded_type
-
-        template_arguments = {
-            'encodingTypeArgument': _type.encoding_type_argument(qualified=should_qualify_type),
-            'enumerableType': decoded_type,
-            'structOrClass': " ".join(decl_type)
-        }
-        return Template(Templates.EnumerableTypeTraitDeclaration).substitute(template_arguments)
-
-    def generate_for_each_macro(self):
-        inputs_to_generate = filter(self.should_generate_item, self._model.inputs)
-
-        macro_name = "%s_REPLAY_INPUT_NAMES_FOR_EACH" % self.setting('prefix').upper()
-        lines = []
-        lines.append("#define %s(macro) \\" % macro_name)
-        lines.extend(["    macro(%s) \\" % _input.name for _input in inputs_to_generate])
-        lines.append("    \\")
-        lines.append("// end of %s" % macro_name)
-        return "\n".join(lines)
-
-    def generate_class_implementation(self, _input):
-        template_arguments = {
-            'inputName': _input.name,
-            'inputsNamespace': self.target_framework.setting('namespace'),
-            'initializerList': self.generate_constructor_initializer_list(_input),
-            'constructorFormalsList': self.generate_constructor_formals_list(_input),
-        }
-
-        return wrap_with_guard(Template(Templates.InputClassImplementation).substitute(template_arguments), _input.guard)
-
-    def generate_enumerable_type_trait_implementation(self, _type):
-        should_qualify_type = _type.framework != self.traits_framework
-        prefix_components = []
-        if should_qualify_type:
-            prefix_components.append(_type.framework.setting('namespace'))
-        if _type.is_enum_declaration() and _type.enclosing_class is not None:
-            prefix_components.append(_type.enclosing_class)
-        elif _type.is_enum_class_declaration() or _type.is_option_set():
-            prefix_components.append(_type.type_name(qualified=False))
-        prefix_components.append("")
-        enumerable_type_prefix = "::".join(prefix_components)
-        encodeLines = []
-
-        if _type.is_enum_declaration():
-            encode_template = Templates.EnumTypeEncodeCase
-            decode_template = Templates.EnumTypeDecodeCase
-            enumerable_type_trait_template = Templates.EnumTypeTraitImplementation
-        elif _type.is_enum_class_declaration():
-            encode_template = Templates.EnumClassTypeEncodeCase
-            decode_template = Templates.EnumClassTypeDecodeCase
-            enumerable_type_trait_template = Templates.EnumClassTypeTraitImplementation
-        else:  # Thus, _type.is_option_set().
-            encode_template = Templates.OptionSetTypeEncodeCase
-            decode_template = Templates.OptionSetTypeDecodeCase
-            enumerable_type_trait_template = Templates.OptionSetTypeTraitImplementation
-
-        # Generate body for encode.
-        for _value in _type.values:
-            template_arguments = {
-                'enumStringValue': _value,
-                'qualifiedEnumValue': "%s%s" % (enumerable_type_prefix, _value),
-            }
-            encodeLines.append(Template(encode_template).substitute(template_arguments))
-
-        for guard, guard_values in _type.guard_values_map.iteritems():
-            guardedLines = []
-            for guard_value in guard_values:
-                template_arguments = {
-                    'enumStringValue': guard_value,
-                    'qualifiedEnumValue': "%s%s" % (enumerable_type_prefix, guard_value),
-                }
-                guardedLines.append(Template(encode_template).substitute(template_arguments))
-            encodeLines.append(wrap_with_guard("\n".join(guardedLines), guard))
-
-        # Generate body for decode.
-        decodeLines = []
-        for i, _value in enumerate(_type.values):
-
-            template_arguments = {
-                'branchKeyword': "else if" if i > 0 else "if",
-                'enumStringValue': _value,
-                'qualifiedEnumValue': "%s%s" % (enumerable_type_prefix, _value),
-                'qualifiedEnumName': _type.type_name(qualified=should_qualify_type)
-            }
-            decodeLines.append(Template(decode_template).substitute(template_arguments))
-
-        for guard, guard_values in _type.guard_values_map.iteritems():
-            guardedLines = []
-            for i, guard_value in enumerate(guard_values):
-                template_arguments = {
-                    'branchKeyword': "else if" if i > 0 else "if",
-                    'enumStringValue': guard_value,
-                    'qualifiedEnumValue': "%s%s" % (enumerable_type_prefix, guard_value),
-                    'qualifiedEnumName': _type.type_name(qualified=should_qualify_type)
-                }
-                guardedLines.append(Template(decode_template).substitute(template_arguments))
-            decodeLines.append(wrap_with_guard("\n".join(guardedLines), guard))
-
-        enumerable_type = _type.type_name(qualified=should_qualify_type)
-        if _type.is_option_set():
-            enumerable_type = "OptionSet<%s>" % enumerable_type
-
-        template_arguments = {
-            'encodingTypeArgument': _type.encoding_type_argument(qualified=should_qualify_type),
-            'enumerableType': enumerable_type,
-            'encodeCases': "\n".join(encodeLines),
-            'decodeCases': "\n".join(decodeLines)
-        }
-
-        return Template(enumerable_type_trait_template).substitute(template_arguments)
-
-    def generate_input_trait_implementation(self, _input):
-        template_arguments = {
-            'inputsNamespace': self.target_framework.setting('namespace'),
-            'inputNameStringLiteral': '"%s"' % _input.name,
-            'qualifiedInputName': self.qualified_input_name(_input),
-            'constructorArguments': self.generate_constructor_arguments_list(_input),
-            'constructorFormalsList': self.generate_constructor_formals_list(_input),
-            'encodeSteps': self.generate_input_encode_implementation(_input),
-            'decodeSteps': self.generate_input_decode_implementation(_input),
-        }
-        return wrap_with_guard(Template(Templates.InputTraitsImplementation).substitute(template_arguments), _input.guard)
-
-    def generate_input_encode_implementation(self, _input):
-        steps = []
-        for (_member, _type) in self.generate_input_member_tuples(_input):
-            should_qualify_type = _type.framework != self.traits_framework
-            put_method = "put<%s>" % _type.encoding_type_argument(qualified=should_qualify_type)
-
-            steps.extend([
-                "    encodedValue.%s(ASCIILiteral(\"%s\"), input.%s());" % (put_method, _member.memberName, _member.memberName)
-            ])
-
-        if len(steps) == 0:
-            steps.extend([
-                "    UNUSED_PARAM(encodedValue);",
-                "    UNUSED_PARAM(input);",
-            ])
-
-        return "\n".join(steps)
-
-    def generate_input_decode_implementation(self, _input):
-        steps = []
-        for (_member, _type) in self.generate_input_member_tuples(_input):
-            should_qualify_type = _type.framework != self.traits_framework
-            get_method = "get<%s>" % _type.encoding_type_argument(qualified=should_qualify_type)
-
-            lines = [
-                "    %s %s;" % (_type.storage_type(qualified=should_qualify_type), _member.memberName),
-                "    if (!encodedValue.%s(ASCIILiteral(\"%s\"), %s))" % (get_method, _member.memberName, _member.memberName),
-                "        return false;",
-                ""
-            ]
-
-            steps.append("\n".join(lines))
-
-        if len(steps) == 0:
-            steps.extend([
-                "    UNUSED_PARAM(encodedValue);",
-            ])
-
-        return "\n".join(steps)
-
-    def generate_constructor_initializer_list(self, _input):
-        initializers = []
-        initializers.append("    : %s()" % (_input.setting('baseClass') % _input.name))
-        for _member in _input.members:
-            initializers.append("    , m_%s(%s)" % (_member.memberName, self.generate_member_move_expression(_member)))
-
-        return "\n".join(initializers)
-
-    def generate_constructor_formals_list(self, _input):
-        member_tuples = self.generate_input_member_tuples(_input)
-        return ", ".join(["%s %s" % (_type.argument_type(), _member.memberName) for (_member, _type) in member_tuples])
-
-    def generate_member_borrow_expression(self, _member):
-        _type = self._model.get_type_for_member(_member)
-        expression = "m_%s" % _member.memberName
-        if _type.mode == TypeModes.OWNED:
-            expression = "*" + expression
-
-        return expression
-
-    def generate_member_move_expression(self, _member):
-        _type = self._model.get_type_for_member(_member)
-        if _type.mode in [TypeModes.OWNED, TypeModes.SHARED]:
-            return "WTFMove(%s)" % _member.memberName
-        else:
-            return _member.memberName
-
-    def generate_constructor_arguments_list(self, _input):
-        return ", ".join([self.generate_member_move_expression(_member) for _member in _input.members])
-
-
-def generate_from_specifications(input_filepaths=[], output_prefix="", output_dirpath=None, framework_name=None, force_output=False):
-
-    if not framework_name in FRAMEWORK_CONFIG_MAP:
-        raise ParseException("Unknown or unsupported framework name supplied: " + framework_name)
-
-    if len(input_filepaths) == 0:
-        raise ParseException("Must provide at least one specification file, none were provided.")
-
-    def parse_json_from_file(input_filepath):
-        try:
-            with open(input_filepath, "r") as input_file:
-                return json.load(input_file)
-        except ValueError as e:
-            raise Exception("Error parsing valid JSON in file: " + input_filepath)
-
-    specifications = map(parse_json_from_file, input_filepaths)
-
-    model = InputsModel()
-    for spec in specifications:
-        model.parse_specification(spec)
-
-    model.resolve_types()
-    generator = Generator(model, framework_name, input_filepaths[0], output_prefix)
-
-    generator.write_output_files(output_dirpath, force_output)
-
-
-if __name__ == '__main__':
-    allowed_framework_names = FRAMEWORK_CONFIG_MAP.keys()
-
-    cli_parser = optparse.OptionParser(usage="usage: %prog [options] <Inputs.json> [, <MoreInputs.json> ]")
-    cli_parser.add_option("-o", "--outputDir", help="Directory where generated files should be written.")
-    cli_parser.add_option("--framework", type="choice", choices=allowed_framework_names, help="The framework these inputs belong to.")  # JavaScriptCore, WebCore
-    cli_parser.add_option("--force", action="store_true", help="Force output of generated scripts, even if nothing changed.")
-    cli_parser.add_option("-v", "--debug", action="store_true", help="Log extra output for debugging the generator itself.")
-    cli_parser.add_option("-t", "--test", action="store_true", help="Enable test mode. Use unique output filenames created by prepending the input filename.")
-
-    options = None
-
-    arg_options, arg_values = cli_parser.parse_args()
-
-    if not arg_options.outputDir:
-        raise ParseException("Missing output directory")
-
-    if arg_options.debug:
-        log.setLevel(logging.DEBUG)
-
-    options = {
-        'input_filepaths': arg_values,
-        'output_dirpath': arg_options.outputDir,
-        'output_prefix': os.path.basename(arg_values[0]) if arg_options.test else "",
-        'framework_name': arg_options.framework,
-        'force_output': arg_options.force
-    }
-
-    try:
-        generate_from_specifications(**options)
-    except (ParseException, TypecheckException) as e:
-        if arg_options.test:
-            log.error(e.message)
-        else:
-            raise e  # Force the build to fail.
diff --git a/Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputsTemplates.py b/Source/JavaScriptCore/replay/scripts/CodeGeneratorReplayInputsTemplates.py
deleted file mode 100755 (executable)
index 9c11b2d..0000000
+++ /dev/null
@@ -1,265 +0,0 @@
-#!/usr/bin/env python
-# Copyright (c) 2011 Google Inc. All rights reserved.
-# Copyright (c) 2012 Intel Corporation. All rights reserved.
-# Copyright (c) 2013-2017 Apple Inc. All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-#     * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#     * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-#     * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-# Generator templates, which can be filled with string.Template.
-# Following are classes that fill the templates from the typechecked model.
-
-class Templates:
-    CopyrightBlock = (
-    """/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from ${inputFilename}
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py""")
-
-    HeaderSkeleton = (
-    """${licenseBlock}
-
-#pragma once
-
-#if ${guardCondition}
-${includes}
-
-${typeForwardDeclarations}
-
-namespace ${inputsNamespace} {
-${inputForwardDeclarations}
-} // namespace ${inputsNamespace}
-
-namespace ${traitsNamespace} {
-${inputTraitDeclarations}
-${enumerableTypeTraitDeclarations}
-} // namespace ${traitsNamespace}
-
-namespace ${inputsNamespace} {
-${inputClassDeclarations}
-} // namespace ${inputsNamespace}
-
-${inputTypeTraitDeclarations}
-
-${forEachMacro}
-
-#endif // ${guardCondition}
-""")
-
-    InputTraitsDeclaration = (
-    """template<> ${structOrClass} InputTraits<${qualifiedInputName}> {
-    static InputQueue queue() { return InputQueue::${queueType}; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const ${qualifiedInputName}&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<${qualifiedInputName}>&);
-};""")
-
-    InputTypeTraitsDeclaration = (
-    """SPECIALIZE_TYPE_TRAITS_BEGIN(${qualifiedInputName})
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<${qualifiedInputName}>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()""")
-
-    EnumerableTypeTraitDeclaration = (
-    """template<> ${structOrClass} EncodingTraits<${encodingTypeArgument}> {
-    typedef ${enumerableType} DecodedType;
-
-    static EncodedValue encodeValue(const ${enumerableType}& value);
-    static bool decodeValue(EncodedValue&, ${enumerableType}& value);
-};""")
-
-    InputClassDeclaration = (
-    """class ${inputName} : public ${baseClass} {
-public:
-${inputConstructor}
-${inputDestructor}
-${extraDeclarations}
-${memberGetters}
-${memberDeclarations}
-};""")
-
-    ImplementationSkeleton = (
-    """${licenseBlock}
-
-#include "config.h"
-#include "${filename}.h"
-
-#if ${guardCondition}
-${includes}
-
-namespace ${inputsNamespace} {
-${inputClassImplementations}
-} // namespace ${inputsNamespace}
-
-namespace ${traitsNamespace} {
-${inputTraitImplementations}
-${enumerableTypeTraitImplementations}
-} // namespace ${traitsNamespace}
-
-#endif // ${guardCondition}
-""")
-
-    InputTraitsImplementation = (
-    """const String& InputTraits<${qualifiedInputName}>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL(${inputNameStringLiteral}));
-    return type;
-}
-
-void InputTraits<${qualifiedInputName}>::encode(EncodedValue& encodedValue, const ${qualifiedInputName}& input)
-{
-${encodeSteps}
-}
-
-bool InputTraits<${qualifiedInputName}>::decode(EncodedValue& encodedValue, std::unique_ptr<${qualifiedInputName}>& input)
-{
-${decodeSteps}
-    input = std::make_unique<${qualifiedInputName}>(${constructorArguments});
-    return true;
-}""")
-
-    EnumClassTypeTraitImplementation = (
-    """EncodedValue EncodingTraits<${encodingTypeArgument}>::encodeValue(const ${enumerableType}& enumValue)
-{
-    switch (enumValue) {
-${encodeCases}
-    default: ASSERT_NOT_REACHED(); return EncodedValue::createString("Error!");
-    }
-}
-
-bool EncodingTraits<${encodingTypeArgument}>::decodeValue(EncodedValue& encodedValue, ${enumerableType}& enumValue)
-{
-    String enumString = encodedValue.convertTo<String>();
-${decodeCases}
-    return false;
-}""")
-
-    EnumClassTypeEncodeCase = (
-    """    case ${qualifiedEnumValue}: return EncodedValue::createString("${enumStringValue}");""")
-
-    EnumClassTypeDecodeCase = (
-    """    if (enumString == "${enumStringValue}") {
-        enumValue = ${qualifiedEnumValue};
-        return true;
-    }""")
-
-    EnumTypeTraitImplementation = (
-    """EncodedValue EncodingTraits<${encodingTypeArgument}>::encodeValue(const ${enumerableType}& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-${encodeCases}
-    return encodedValue;
-}
-
-bool EncodingTraits<${encodingTypeArgument}>::decodeValue(EncodedValue& encodedValue, ${enumerableType}& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-${decodeCases}
-    }
-
-    return true;
-}""")
-
-    EnumTypeEncodeCase = (
-    """    if (enumValue & ${qualifiedEnumValue}) {
-        encodedValue.append<String>(ASCIILiteral("${enumStringValue}"));
-        if (enumValue == ${qualifiedEnumValue})
-            return encodedValue;
-    }""")
-
-    EnumTypeDecodeCase = (
-    """        ${branchKeyword} (enumString == "${enumStringValue}")
-            enumValue = static_cast<${qualifiedEnumName}>(enumValue | ${qualifiedEnumValue});""")
-
-    OptionSetTypeTraitImplementation = (
-    """EncodedValue EncodingTraits<${encodingTypeArgument}>::encodeValue(const ${enumerableType}& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-${encodeCases}
-
-    return encodedValue;
-}
-
-bool EncodingTraits<${encodingTypeArgument}>::decodeValue(EncodedValue& encodedValue, ${enumerableType}& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-${decodeCases}
-    }
-
-    return true;
-}""")
-
-    OptionSetTypeEncodeCase = (
-    """    if (enumValue.contains(${qualifiedEnumValue}))
-        encodedValue.append<String>(ASCIILiteral("${enumStringValue}"));""")
-
-    OptionSetTypeDecodeCase = (
-    """        ${branchKeyword} (enumString == "${enumStringValue}")
-            enumValue |= ${qualifiedEnumValue};""")
-
-
-    InputClassImplementation = (
-    """${inputName}::${inputName}(${constructorFormalsList})
-${initializerList}
-{
-}
-
-${inputName}::~${inputName}()
-{
-}""")
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-c-style-enum-no-storage.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-c-style-enum-no-storage.json-error
deleted file mode 100644 (file)
index 9ef00c4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Could not parse enumerable type MouseButton: C-style enum declarations not enclosed by a class must specify their storage type so they can be forward declared.
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error
deleted file mode 100644 (file)
index ef750bf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Duplicate type with name: PlatformEvent::Type
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-input-names.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-input-names.json-error
deleted file mode 100644 (file)
index d31ec80..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Duplicate input with name: GetCurrentTime
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-type-names.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-duplicate-type-names.json-error
deleted file mode 100644 (file)
index d1e4c47..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Duplicate type with name: uint64_t
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-enum-type-missing-values.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-enum-type-missing-values.json-error
deleted file mode 100644 (file)
index b4a348c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing enum, required property missing: values
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-member-name.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-member-name.json-error
deleted file mode 100644 (file)
index 0bb2869..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing member, required property missing: name
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-name.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-name.json-error
deleted file mode 100644 (file)
index b599607..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing input, required property missing: name
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-queue.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-input-queue.json-error
deleted file mode 100644 (file)
index c7919ab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing input, required property missing: queue
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-mode.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-mode.json-error
deleted file mode 100644 (file)
index 6929f4f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing type, required property missing: mode
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-name.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-missing-type-name.json-error
deleted file mode 100644 (file)
index 0aad900..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: When parsing type, required property missing: name
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-input-queue.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-input-queue.json-error
deleted file mode 100644 (file)
index acf469b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Unknown input queue: SCRIPT_MEOIZED
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-member-type.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-member-type.json-error
deleted file mode 100644 (file)
index d31e454..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Unknown type 'double' referenced by member 'randomSeed' of input 'SetRandomSeed'
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-type-mode.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/fail-on-unknown-type-mode.json-error
deleted file mode 100644 (file)
index 952c69e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Unknown type mode: BONKERS
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 22271ff..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-encoding-helpers-with-guarded-values.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-#include <platform/PlatformMouseEvent.h>
-
-namespace Test {
-SavedMouseButton::SavedMouseButton(MouseButton button)
-    : NondeterministicInput<SavedMouseButton>()
-    , m_button(button)
-{
-}
-
-SavedMouseButton::~SavedMouseButton()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::SavedMouseButton>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("SavedMouseButton"));
-    return type;
-}
-
-void InputTraits<Test::SavedMouseButton>::encode(EncodedValue& encodedValue, const Test::SavedMouseButton& input)
-{
-    encodedValue.put<WebCore::MouseButton>(ASCIILiteral("button"), input.button());
-}
-
-bool InputTraits<Test::SavedMouseButton>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::SavedMouseButton>& input)
-{
-    WebCore::MouseButton button;
-    if (!encodedValue.get<WebCore::MouseButton>(ASCIILiteral("button"), button))
-        return false;
-
-    input = std::make_unique<Test::SavedMouseButton>(button);
-    return true;
-}
-
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers-with-guarded-values.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 913fffb..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-encoding-helpers-with-guarded-values.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-namespace WebCore {
-enum MouseButton : unsigned;
-}
-
-
-namespace Test {
-class SavedMouseButton;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::SavedMouseButton> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::SavedMouseButton&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SavedMouseButton>&);
-};
-
-} // namespace JSC
-
-namespace Test {
-class SavedMouseButton : public NondeterministicInput<SavedMouseButton> {
-public:
-    TEST_EXPORT_MACRO SavedMouseButton(MouseButton button);
-    virtual ~SavedMouseButton();
-
-    MouseButton button() const { return m_button; }
-private:
-    MouseButton m_button;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::SavedMouseButton)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::SavedMouseButton>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(SavedMouseButton) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 1f68b6c..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-encoding-helpers.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-enum-encoding-helpers.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include "NondeterministicInput.h"
-#include "PlatformMouseEvent.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-
-namespace Test {
-SavedMouseButton::SavedMouseButton(MouseButton button)
-    : NondeterministicInput<SavedMouseButton>()
-    , m_button(button)
-{
-}
-
-SavedMouseButton::~SavedMouseButton()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::SavedMouseButton>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("SavedMouseButton"));
-    return type;
-}
-
-void InputTraits<Test::SavedMouseButton>::encode(EncodedValue& encodedValue, const Test::SavedMouseButton& input)
-{
-    encodedValue.put<Test::MouseButton>(ASCIILiteral("button"), input.button());
-}
-
-bool InputTraits<Test::SavedMouseButton>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::SavedMouseButton>& input)
-{
-    Test::MouseButton button;
-    if (!encodedValue.get<Test::MouseButton>(ASCIILiteral("button"), button))
-        return false;
-
-    input = std::make_unique<Test::SavedMouseButton>(button);
-    return true;
-}
-EncodedValue EncodingTraits<Test::InputQueue>::encodeValue(const Test::InputQueue& enumValue)
-{
-    switch (enumValue) {
-    case Test::InputQueue::EventLoopInput: return EncodedValue::createString("EventLoopInput");
-    case Test::InputQueue::LoaderMemoizedData: return EncodedValue::createString("LoaderMemoizedData");
-    case Test::InputQueue::ScriptMemoizedData: return EncodedValue::createString("ScriptMemoizedData");
-    default: ASSERT_NOT_REACHED(); return EncodedValue::createString("Error!");
-    }
-}
-
-bool EncodingTraits<Test::InputQueue>::decodeValue(EncodedValue& encodedValue, Test::InputQueue& enumValue)
-{
-    String enumString = encodedValue.convertTo<String>();
-    if (enumString == "EventLoopInput") {
-        enumValue = Test::InputQueue::EventLoopInput;
-        return true;
-    }
-    if (enumString == "LoaderMemoizedData") {
-        enumValue = Test::InputQueue::LoaderMemoizedData;
-        return true;
-    }
-    if (enumString == "ScriptMemoizedData") {
-        enumValue = Test::InputQueue::ScriptMemoizedData;
-        return true;
-    }
-    return false;
-}
-
-EncodedValue EncodingTraits<Test::MouseButton>::encodeValue(const Test::MouseButton& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-    if (enumValue & Test::NoButton) {
-        encodedValue.append<String>(ASCIILiteral("NoButton"));
-        if (enumValue == Test::NoButton)
-            return encodedValue;
-    }
-    if (enumValue & Test::LeftButton) {
-        encodedValue.append<String>(ASCIILiteral("LeftButton"));
-        if (enumValue == Test::LeftButton)
-            return encodedValue;
-    }
-    if (enumValue & Test::MiddleButton) {
-        encodedValue.append<String>(ASCIILiteral("MiddleButton"));
-        if (enumValue == Test::MiddleButton)
-            return encodedValue;
-    }
-    if (enumValue & Test::RightButton) {
-        encodedValue.append<String>(ASCIILiteral("RightButton"));
-        if (enumValue == Test::RightButton)
-            return encodedValue;
-    }
-    return encodedValue;
-}
-
-bool EncodingTraits<Test::MouseButton>::decodeValue(EncodedValue& encodedValue, Test::MouseButton& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-        if (enumString == "NoButton")
-            enumValue = static_cast<Test::MouseButton>(enumValue | Test::NoButton);
-        else if (enumString == "LeftButton")
-            enumValue = static_cast<Test::MouseButton>(enumValue | Test::LeftButton);
-        else if (enumString == "MiddleButton")
-            enumValue = static_cast<Test::MouseButton>(enumValue | Test::MiddleButton);
-        else if (enumString == "RightButton")
-            enumValue = static_cast<Test::MouseButton>(enumValue | Test::RightButton);
-    }
-
-    return true;
-}
-
-EncodedValue EncodingTraits<Test::PlatformEvent::OtherType>::encodeValue(const OptionSet<Test::PlatformEvent::OtherType>& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-    if (enumValue.contains(Test::PlatformEvent::OtherType::Mouse))
-        encodedValue.append<String>(ASCIILiteral("Mouse"));
-    if (enumValue.contains(Test::PlatformEvent::OtherType::Key))
-        encodedValue.append<String>(ASCIILiteral("Key"));
-    if (enumValue.contains(Test::PlatformEvent::OtherType::Touch))
-        encodedValue.append<String>(ASCIILiteral("Touch"));
-    if (enumValue.contains(Test::PlatformEvent::OtherType::Wheel))
-        encodedValue.append<String>(ASCIILiteral("Wheel"));
-
-    return encodedValue;
-}
-
-bool EncodingTraits<Test::PlatformEvent::OtherType>::decodeValue(EncodedValue& encodedValue, OptionSet<Test::PlatformEvent::OtherType>& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-        if (enumString == "Mouse")
-            enumValue |= Test::PlatformEvent::OtherType::Mouse;
-        else if (enumString == "Key")
-            enumValue |= Test::PlatformEvent::OtherType::Key;
-        else if (enumString == "Touch")
-            enumValue |= Test::PlatformEvent::OtherType::Touch;
-        else if (enumString == "Wheel")
-            enumValue |= Test::PlatformEvent::OtherType::Wheel;
-    }
-
-    return true;
-}
-
-EncodedValue EncodingTraits<Test::PlatformEvent::Type>::encodeValue(const Test::PlatformEvent::Type& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-    if (enumValue & Test::PlatformEvent::Mouse) {
-        encodedValue.append<String>(ASCIILiteral("Mouse"));
-        if (enumValue == Test::PlatformEvent::Mouse)
-            return encodedValue;
-    }
-    if (enumValue & Test::PlatformEvent::Key) {
-        encodedValue.append<String>(ASCIILiteral("Key"));
-        if (enumValue == Test::PlatformEvent::Key)
-            return encodedValue;
-    }
-    if (enumValue & Test::PlatformEvent::Touch) {
-        encodedValue.append<String>(ASCIILiteral("Touch"));
-        if (enumValue == Test::PlatformEvent::Touch)
-            return encodedValue;
-    }
-    if (enumValue & Test::PlatformEvent::Wheel) {
-        encodedValue.append<String>(ASCIILiteral("Wheel"));
-        if (enumValue == Test::PlatformEvent::Wheel)
-            return encodedValue;
-    }
-    return encodedValue;
-}
-
-bool EncodingTraits<Test::PlatformEvent::Type>::decodeValue(EncodedValue& encodedValue, Test::PlatformEvent::Type& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-        if (enumString == "Mouse")
-            enumValue = static_cast<Test::PlatformEvent::Type>(enumValue | Test::PlatformEvent::Mouse);
-        else if (enumString == "Key")
-            enumValue = static_cast<Test::PlatformEvent::Type>(enumValue | Test::PlatformEvent::Key);
-        else if (enumString == "Touch")
-            enumValue = static_cast<Test::PlatformEvent::Type>(enumValue | Test::PlatformEvent::Touch);
-        else if (enumString == "Wheel")
-            enumValue = static_cast<Test::PlatformEvent::Type>(enumValue | Test::PlatformEvent::Wheel);
-    }
-
-    return true;
-}
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 37bd92f..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-encoding-helpers.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include "PlatformEvent.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-namespace Test {
-enum MouseButton : unsigned;
-enum class InputQueue;
-}
-
-
-namespace Test {
-class SavedMouseButton;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::SavedMouseButton> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::SavedMouseButton&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SavedMouseButton>&);
-};
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::InputQueue> {
-    typedef Test::InputQueue DecodedType;
-
-    static EncodedValue encodeValue(const Test::InputQueue& value);
-    static bool decodeValue(EncodedValue&, Test::InputQueue& value);
-};
-
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::MouseButton> {
-    typedef Test::MouseButton DecodedType;
-
-    static EncodedValue encodeValue(const Test::MouseButton& value);
-    static bool decodeValue(EncodedValue&, Test::MouseButton& value);
-};
-
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::PlatformEvent::OtherType> {
-    typedef OptionSet<Test::PlatformEvent::OtherType> DecodedType;
-
-    static EncodedValue encodeValue(const OptionSet<Test::PlatformEvent::OtherType>& value);
-    static bool decodeValue(EncodedValue&, OptionSet<Test::PlatformEvent::OtherType>& value);
-};
-
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::PlatformEvent::Type> {
-    typedef Test::PlatformEvent::Type DecodedType;
-
-    static EncodedValue encodeValue(const Test::PlatformEvent::Type& value);
-    static bool decodeValue(EncodedValue&, Test::PlatformEvent::Type& value);
-};
-} // namespace JSC
-
-namespace Test {
-class SavedMouseButton : public NondeterministicInput<SavedMouseButton> {
-public:
-    TEST_EXPORT_MACRO SavedMouseButton(MouseButton button);
-    virtual ~SavedMouseButton();
-
-    MouseButton button() const { return m_button; }
-private:
-    MouseButton m_button;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::SavedMouseButton)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::SavedMouseButton>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(SavedMouseButton) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index c86d236..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-with-guard.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-enum-with-guard.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include "PlatformWheelEvent.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-#include <platform/PlatformWheelEvent.h>
-
-namespace Test {
-HandleWheelEvent::HandleWheelEvent(std::unique_ptr<PlatformWheelEvent> platformEvent, PlatformWheelPhase phase)
-    : EventLoopInput<HandleWheelEvent>()
-    , m_platformEvent(WTFMove(platformEvent))
-    , m_phase(phase)
-{
-}
-
-HandleWheelEvent::~HandleWheelEvent()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::HandleWheelEvent>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("HandleWheelEvent"));
-    return type;
-}
-
-void InputTraits<Test::HandleWheelEvent>::encode(EncodedValue& encodedValue, const Test::HandleWheelEvent& input)
-{
-    encodedValue.put<WebCore::PlatformWheelEvent>(ASCIILiteral("platformEvent"), input.platformEvent());
-    encodedValue.put<Test::PlatformWheelPhase>(ASCIILiteral("phase"), input.phase());
-}
-
-bool InputTraits<Test::HandleWheelEvent>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::HandleWheelEvent>& input)
-{
-    std::unique_ptr<WebCore::PlatformWheelEvent> platformEvent;
-    if (!encodedValue.get<WebCore::PlatformWheelEvent>(ASCIILiteral("platformEvent"), platformEvent))
-        return false;
-
-    Test::PlatformWheelPhase phase;
-    if (!encodedValue.get<Test::PlatformWheelPhase>(ASCIILiteral("phase"), phase))
-        return false;
-
-    input = std::make_unique<Test::HandleWheelEvent>(WTFMove(platformEvent), phase);
-    return true;
-}
-#if ENABLE(DUMMY_FEATURE)
-EncodedValue EncodingTraits<Test::PlatformWheelPhase>::encodeValue(const Test::PlatformWheelPhase& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-    if (enumValue & Test::PlatformWheelEventPhaseNone) {
-        encodedValue.append<String>(ASCIILiteral("PlatformWheelEventPhaseNone"));
-        if (enumValue == Test::PlatformWheelEventPhaseNone)
-            return encodedValue;
-    }
-    return encodedValue;
-}
-
-bool EncodingTraits<Test::PlatformWheelPhase>::decodeValue(EncodedValue& encodedValue, Test::PlatformWheelPhase& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-        if (enumString == "PlatformWheelEventPhaseNone")
-            enumValue = static_cast<Test::PlatformWheelPhase>(enumValue | Test::PlatformWheelEventPhaseNone);
-    }
-
-    return true;
-}
-#endif // ENABLE(DUMMY_FEATURE)
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enum-with-guard.json-TestReplayInputs.h
deleted file mode 100644 (file)
index adab4b7..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enum-with-guard.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-namespace Test {
-enum PlatformWheelPhase : uint64_t;
-}
-
-namespace WebCore {
-class PlatformWheelEvent;
-}
-
-
-namespace Test {
-class HandleWheelEvent;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::HandleWheelEvent> {
-    static InputQueue queue() { return InputQueue::EventLoopInput; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::HandleWheelEvent&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::HandleWheelEvent>&);
-};
-#if ENABLE(DUMMY_FEATURE)
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::PlatformWheelPhase> {
-    typedef Test::PlatformWheelPhase DecodedType;
-
-    static EncodedValue encodeValue(const Test::PlatformWheelPhase& value);
-    static bool decodeValue(EncodedValue&, Test::PlatformWheelPhase& value);
-};
-#endif // ENABLE(DUMMY_FEATURE)
-} // namespace JSC
-
-namespace Test {
-class HandleWheelEvent : public EventLoopInput<HandleWheelEvent> {
-public:
-    TEST_EXPORT_MACRO HandleWheelEvent(std::unique_ptr<PlatformWheelEvent> platformEvent, PlatformWheelPhase phase);
-    virtual ~HandleWheelEvent();
-
-    // EventLoopInput API
-    virtual void dispatch(ReplayController&) final;
-    const PlatformWheelEvent& platformEvent() const { return *m_platformEvent; }
-    PlatformWheelPhase phase() const { return m_phase; }
-private:
-    std::unique_ptr<PlatformWheelEvent> m_platformEvent;
-    PlatformWheelPhase m_phase;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::HandleWheelEvent)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::HandleWheelEvent>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(HandleWheelEvent) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 559aed1..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enums-with-same-base-name.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-enums-with-same-base-name.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-
-namespace Test {
-FormCombo::FormCombo(PlatformEvent1::Type eventType1, PlatformEvent2::Type eventType2, FormData1::Type formType1, FormData2::Type formType2)
-    : NondeterministicInput<FormCombo>()
-    , m_eventType1(eventType1)
-    , m_eventType2(eventType2)
-    , m_formType1(formType1)
-    , m_formType2(formType2)
-{
-}
-
-FormCombo::~FormCombo()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::FormCombo>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("FormCombo"));
-    return type;
-}
-
-void InputTraits<Test::FormCombo>::encode(EncodedValue& encodedValue, const Test::FormCombo& input)
-{
-    encodedValue.put<PlatformEvent1::Type>(ASCIILiteral("eventType1"), input.eventType1());
-    encodedValue.put<PlatformEvent2::Type>(ASCIILiteral("eventType2"), input.eventType2());
-    encodedValue.put<Test::FormData1::Type>(ASCIILiteral("formType1"), input.formType1());
-    encodedValue.put<Test::FormData2::Type>(ASCIILiteral("formType2"), input.formType2());
-}
-
-bool InputTraits<Test::FormCombo>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::FormCombo>& input)
-{
-    PlatformEvent1::Type eventType1;
-    if (!encodedValue.get<PlatformEvent1::Type>(ASCIILiteral("eventType1"), eventType1))
-        return false;
-
-    PlatformEvent2::Type eventType2;
-    if (!encodedValue.get<PlatformEvent2::Type>(ASCIILiteral("eventType2"), eventType2))
-        return false;
-
-    Test::FormData1::Type formType1;
-    if (!encodedValue.get<Test::FormData1::Type>(ASCIILiteral("formType1"), formType1))
-        return false;
-
-    Test::FormData2::Type formType2;
-    if (!encodedValue.get<Test::FormData2::Type>(ASCIILiteral("formType2"), formType2))
-        return false;
-
-    input = std::make_unique<Test::FormCombo>(eventType1, eventType2, formType1, formType2);
-    return true;
-}
-EncodedValue EncodingTraits<Test::FormData1::Type>::encodeValue(const Test::FormData1::Type& enumValue)
-{
-    EncodedValue encodedValue = EncodedValue::createArray();
-    if (enumValue & Test::FormData1::Text) {
-        encodedValue.append<String>(ASCIILiteral("Text"));
-        if (enumValue == Test::FormData1::Text)
-            return encodedValue;
-    }
-    if (enumValue & Test::FormData1::Blob) {
-        encodedValue.append<String>(ASCIILiteral("Blob"));
-        if (enumValue == Test::FormData1::Blob)
-            return encodedValue;
-    }
-    return encodedValue;
-}
-
-bool EncodingTraits<Test::FormData1::Type>::decodeValue(EncodedValue& encodedValue, Test::FormData1::Type& enumValue)
-{
-    Vector<String> enumStrings;
-    if (!EncodingTraits<Vector<String>>::decodeValue(encodedValue, enumStrings))
-        return false;
-
-    for (const String& enumString : enumStrings) {
-        if (enumString == "Text")
-            enumValue = static_cast<Test::FormData1::Type>(enumValue | Test::FormData1::Text);
-        else if (enumString == "Blob")
-            enumValue = static_cast<Test::FormData1::Type>(enumValue | Test::FormData1::Blob);
-    }
-
-    return true;
-}
-
-EncodedValue EncodingTraits<Test::FormData2::Type>::encodeValue(const Test::FormData2::Type& enumValue)
-{
-    switch (enumValue) {
-    case Test::FormData2::Type::Text: return EncodedValue::createString("Text");
-    case Test::FormData2::Type::Blob: return EncodedValue::createString("Blob");
-    default: ASSERT_NOT_REACHED(); return EncodedValue::createString("Error!");
-    }
-}
-
-bool EncodingTraits<Test::FormData2::Type>::decodeValue(EncodedValue& encodedValue, Test::FormData2::Type& enumValue)
-{
-    String enumString = encodedValue.convertTo<String>();
-    if (enumString == "Text") {
-        enumValue = Test::FormData2::Type::Text;
-        return true;
-    }
-    if (enumString == "Blob") {
-        enumValue = Test::FormData2::Type::Blob;
-        return true;
-    }
-    return false;
-}
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 86d43be..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-enums-with-same-base-name.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "FormData1.h"
-#include "FormData2.h"
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-#include <replay/PlatformEvent.h>
-
-
-
-namespace Test {
-class FormCombo;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::FormCombo> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::FormCombo&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::FormCombo>&);
-};
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::FormData1::Type> {
-    typedef Test::FormData1::Type DecodedType;
-
-    static EncodedValue encodeValue(const Test::FormData1::Type& value);
-    static bool decodeValue(EncodedValue&, Test::FormData1::Type& value);
-};
-
-template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::FormData2::Type> {
-    typedef Test::FormData2::Type DecodedType;
-
-    static EncodedValue encodeValue(const Test::FormData2::Type& value);
-    static bool decodeValue(EncodedValue&, Test::FormData2::Type& value);
-};
-} // namespace JSC
-
-namespace Test {
-class FormCombo : public NondeterministicInput<FormCombo> {
-public:
-    TEST_EXPORT_MACRO FormCombo(PlatformEvent1::Type eventType1, PlatformEvent2::Type eventType2, FormData1::Type formType1, FormData2::Type formType2);
-    virtual ~FormCombo();
-
-    PlatformEvent1::Type eventType1() const { return m_eventType1; }
-    PlatformEvent2::Type eventType2() const { return m_eventType2; }
-    FormData1::Type formType1() const { return m_formType1; }
-    FormData2::Type formType2() const { return m_formType2; }
-private:
-    PlatformEvent1::Type m_eventType1;
-    PlatformEvent2::Type m_eventType2;
-    FormData1::Type m_formType1;
-    FormData2::Type m_formType2;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::FormCombo)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::FormCombo>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(FormCombo) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-event-loop-shape-types.json-error b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-event-loop-shape-types.json-error
deleted file mode 100644 (file)
index 90a4176..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Unknown type mode: MAP
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 002f3e9..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-input-with-guard.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-input-with-guard.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-
-namespace Test {
-#if ENABLE(DUMMY_FEATURE)
-GetCurrentTime::GetCurrentTime(double currentTime)
-    : NondeterministicInput<GetCurrentTime>()
-    , m_currentTime(currentTime)
-{
-}
-
-GetCurrentTime::~GetCurrentTime()
-{
-}
-#endif // ENABLE(DUMMY_FEATURE)
-
-SetRandomSeed::SetRandomSeed(uint64_t randomSeed)
-    : NondeterministicInput<SetRandomSeed>()
-    , m_randomSeed(randomSeed)
-{
-}
-
-SetRandomSeed::~SetRandomSeed()
-{
-}
-} // namespace Test
-
-namespace JSC {
-#if ENABLE(DUMMY_FEATURE)
-const String& InputTraits<Test::GetCurrentTime>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("GetCurrentTime"));
-    return type;
-}
-
-void InputTraits<Test::GetCurrentTime>::encode(EncodedValue& encodedValue, const Test::GetCurrentTime& input)
-{
-    encodedValue.put<double>(ASCIILiteral("currentTime"), input.currentTime());
-}
-
-bool InputTraits<Test::GetCurrentTime>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::GetCurrentTime>& input)
-{
-    double currentTime;
-    if (!encodedValue.get<double>(ASCIILiteral("currentTime"), currentTime))
-        return false;
-
-    input = std::make_unique<Test::GetCurrentTime>(currentTime);
-    return true;
-}
-#endif // ENABLE(DUMMY_FEATURE)
-
-const String& InputTraits<Test::SetRandomSeed>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("SetRandomSeed"));
-    return type;
-}
-
-void InputTraits<Test::SetRandomSeed>::encode(EncodedValue& encodedValue, const Test::SetRandomSeed& input)
-{
-    encodedValue.put<uint64_t>(ASCIILiteral("randomSeed"), input.randomSeed());
-}
-
-bool InputTraits<Test::SetRandomSeed>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::SetRandomSeed>& input)
-{
-    uint64_t randomSeed;
-    if (!encodedValue.get<uint64_t>(ASCIILiteral("randomSeed"), randomSeed))
-        return false;
-
-    input = std::make_unique<Test::SetRandomSeed>(randomSeed);
-    return true;
-}
-
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-guard.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 6d9346e..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-input-with-guard.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-
-
-namespace Test {
-#if ENABLE(DUMMY_FEATURE)
-class GetCurrentTime;
-#endif // ENABLE(DUMMY_FEATURE)
-class SetRandomSeed;
-} // namespace Test
-
-namespace JSC {
-#if ENABLE(DUMMY_FEATURE)
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::GetCurrentTime> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::GetCurrentTime&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::GetCurrentTime>&);
-};
-#endif // ENABLE(DUMMY_FEATURE)
-
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::SetRandomSeed> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::SetRandomSeed&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SetRandomSeed>&);
-};
-
-} // namespace JSC
-
-namespace Test {
-#if ENABLE(DUMMY_FEATURE)
-class GetCurrentTime : public NondeterministicInput<GetCurrentTime> {
-public:
-    TEST_EXPORT_MACRO GetCurrentTime(double currentTime);
-    virtual ~GetCurrentTime();
-
-    double currentTime() const { return m_currentTime; }
-private:
-    double m_currentTime;
-};
-#endif // ENABLE(DUMMY_FEATURE)
-
-class SetRandomSeed : public NondeterministicInput<SetRandomSeed> {
-public:
-    TEST_EXPORT_MACRO SetRandomSeed(uint64_t randomSeed);
-    virtual ~SetRandomSeed();
-
-    uint64_t randomSeed() const { return m_randomSeed; }
-private:
-    uint64_t m_randomSeed;
-};
-} // namespace Test
-
-#if ENABLE(DUMMY_FEATURE)
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::GetCurrentTime)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::GetCurrentTime>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-#endif // ENABLE(DUMMY_FEATURE)
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::SetRandomSeed)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::SetRandomSeed>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(GetCurrentTime) \
-    macro(SetRandomSeed) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 7b9b4c8..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-input-with-vector-members.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-input-with-vector-members.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-#include <things/JSThing.h>
-#include <things/WebThing.h>
-
-namespace Test {
-ArrayOfThings::ArrayOfThings(Vector<double>& doubles, Vector<JSThing>& jsthings, Vector<WebThing>& webthings)
-    : NondeterministicInput<ArrayOfThings>()
-    , m_doubles(doubles)
-    , m_jsthings(jsthings)
-    , m_webthings(webthings)
-{
-}
-
-ArrayOfThings::~ArrayOfThings()
-{
-}
-
-SavedHistory::SavedHistory(Vector<RefPtr<HistoryItem>>& entries)
-    : NondeterministicInput<SavedHistory>()
-    , m_entries(entries)
-{
-}
-
-SavedHistory::~SavedHistory()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::ArrayOfThings>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("ArrayOfThings"));
-    return type;
-}
-
-void InputTraits<Test::ArrayOfThings>::encode(EncodedValue& encodedValue, const Test::ArrayOfThings& input)
-{
-    encodedValue.put<Vector<double>>(ASCIILiteral("doubles"), input.doubles());
-    encodedValue.put<Vector<JSThing>>(ASCIILiteral("jsthings"), input.jsthings());
-    encodedValue.put<Vector<WebCore::WebThing>>(ASCIILiteral("webthings"), input.webthings());
-}
-
-bool InputTraits<Test::ArrayOfThings>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::ArrayOfThings>& input)
-{
-    Vector<double> doubles;
-    if (!encodedValue.get<Vector<double>>(ASCIILiteral("doubles"), doubles))
-        return false;
-
-    Vector<JSThing> jsthings;
-    if (!encodedValue.get<Vector<JSThing>>(ASCIILiteral("jsthings"), jsthings))
-        return false;
-
-    Vector<WebCore::WebThing> webthings;
-    if (!encodedValue.get<Vector<WebCore::WebThing>>(ASCIILiteral("webthings"), webthings))
-        return false;
-
-    input = std::make_unique<Test::ArrayOfThings>(doubles, jsthings, webthings);
-    return true;
-}
-
-const String& InputTraits<Test::SavedHistory>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("SavedHistory"));
-    return type;
-}
-
-void InputTraits<Test::SavedHistory>::encode(EncodedValue& encodedValue, const Test::SavedHistory& input)
-{
-    encodedValue.put<Vector<WebCore::HistoryItem>>(ASCIILiteral("entries"), input.entries());
-}
-
-bool InputTraits<Test::SavedHistory>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::SavedHistory>& input)
-{
-    Vector<RefPtr<WebCore::HistoryItem>> entries;
-    if (!encodedValue.get<Vector<WebCore::HistoryItem>>(ASCIILiteral("entries"), entries))
-        return false;
-
-    input = std::make_unique<Test::SavedHistory>(entries);
-    return true;
-}
-
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 9f184fa..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-input-with-vector-members.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <history/HistoryItem.h>
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-namespace WebCore {
-class HistoryItem;
-}
-
-
-namespace Test {
-class ArrayOfThings;
-class SavedHistory;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::ArrayOfThings> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::ArrayOfThings&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::ArrayOfThings>&);
-};
-
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::SavedHistory> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::SavedHistory&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SavedHistory>&);
-};
-
-} // namespace JSC
-
-namespace Test {
-class ArrayOfThings : public NondeterministicInput<ArrayOfThings> {
-public:
-    TEST_EXPORT_MACRO ArrayOfThings(Vector<double>& doubles, Vector<JSThing>& jsthings, Vector<WebThing>& webthings);
-    virtual ~ArrayOfThings();
-
-    const Vector<double>& doubles() const { return m_doubles; }
-    const Vector<JSThing>& jsthings() const { return m_jsthings; }
-    const Vector<WebThing>& webthings() const { return m_webthings; }
-private:
-    Vector<double> m_doubles;
-    Vector<JSThing> m_jsthings;
-    Vector<WebThing> m_webthings;
-};
-
-class SavedHistory : public NondeterministicInput<SavedHistory> {
-public:
-    TEST_EXPORT_MACRO SavedHistory(Vector<RefPtr<HistoryItem>>& entries);
-    virtual ~SavedHistory();
-
-    const Vector<RefPtr<HistoryItem>>& entries() const { return m_entries; }
-private:
-    Vector<RefPtr<HistoryItem>> m_entries;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::ArrayOfThings)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::ArrayOfThings>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::SavedHistory)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::SavedHistory>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(ArrayOfThings) \
-    macro(SavedHistory) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index d1cd9c3..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-inputs-with-flags.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-inputs-with-flags.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-
-namespace Test {
-ScalarInput1::ScalarInput1(ScalarType data)
-    : NondeterministicInput<ScalarInput1>()
-    , m_data(data)
-{
-}
-
-ScalarInput1::~ScalarInput1()
-{
-}
-
-ScalarInput2::ScalarInput2(ScalarType data)
-    : NondeterministicInput<ScalarInput2>()
-    , m_data(data)
-{
-}
-
-ScalarInput2::~ScalarInput2()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::ScalarInput1>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("ScalarInput1"));
-    return type;
-}
-
-void InputTraits<Test::ScalarInput1>::encode(EncodedValue& encodedValue, const Test::ScalarInput1& input)
-{
-    encodedValue.put<ScalarType>(ASCIILiteral("data"), input.data());
-}
-
-bool InputTraits<Test::ScalarInput1>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::ScalarInput1>& input)
-{
-    ScalarType data;
-    if (!encodedValue.get<ScalarType>(ASCIILiteral("data"), data))
-        return false;
-
-    input = std::make_unique<Test::ScalarInput1>(data);
-    return true;
-}
-
-const String& InputTraits<Test::ScalarInput2>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("ScalarInput2"));
-    return type;
-}
-
-void InputTraits<Test::ScalarInput2>::encode(EncodedValue& encodedValue, const Test::ScalarInput2& input)
-{
-    encodedValue.put<ScalarType>(ASCIILiteral("data"), input.data());
-}
-
-bool InputTraits<Test::ScalarInput2>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::ScalarInput2>& input)
-{
-    ScalarType data;
-    if (!encodedValue.get<ScalarType>(ASCIILiteral("data"), data))
-        return false;
-
-    input = std::make_unique<Test::ScalarInput2>(data);
-    return true;
-}
-
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-inputs-with-flags.json-TestReplayInputs.h
deleted file mode 100644 (file)
index 761ea90..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-inputs-with-flags.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-
-
-namespace Test {
-class ScalarInput1;
-class ScalarInput2;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::ScalarInput1> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::ScalarInput1&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::ScalarInput1>&);
-};
-
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::ScalarInput2> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::ScalarInput2&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::ScalarInput2>&);
-};
-
-} // namespace JSC
-
-namespace Test {
-class ScalarInput1 : public NondeterministicInput<ScalarInput1> {
-public:
-    TEST_EXPORT_MACRO ScalarInput1(ScalarType data);
-    virtual ~ScalarInput1();
-
-    ScalarType data() const { return m_data; }
-private:
-    ScalarType m_data;
-};
-
-class ScalarInput2 : public NondeterministicInput<ScalarInput2> {
-public:
-    TEST_EXPORT_MACRO ScalarInput2(ScalarType data);
-    virtual ~ScalarInput2();
-
-    ScalarType data() const { return m_data; }
-private:
-    ScalarType m_data;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::ScalarInput1)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::ScalarInput1>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::ScalarInput2)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::ScalarInput2>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(ScalarInput1) \
-    macro(ScalarInput2) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.cpp
deleted file mode 100644 (file)
index 45b1462..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-memoized-type-modes.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#include "config.h"
-#include "generate-memoized-type-modes.json-TestReplayInputs.h"
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceImplIncludeDummy.h"
-#include <platform/ExternalNamespaceImplIncludeDummy.h>
-
-namespace Test {
-ScalarInput::ScalarInput(ScalarType data)
-    : NondeterministicInput<ScalarInput>()
-    , m_data(data)
-{
-}
-
-ScalarInput::~ScalarInput()
-{
-}
-
-MapInput::MapInput(std::unique_ptr<MapType> data)
-    : NondeterministicInput<MapInput>()
-    , m_data(WTFMove(data))
-{
-}
-
-MapInput::~MapInput()
-{
-}
-} // namespace Test
-
-namespace JSC {
-const String& InputTraits<Test::ScalarInput>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("ScalarInput"));
-    return type;
-}
-
-void InputTraits<Test::ScalarInput>::encode(EncodedValue& encodedValue, const Test::ScalarInput& input)
-{
-    encodedValue.put<ScalarType>(ASCIILiteral("data"), input.data());
-}
-
-bool InputTraits<Test::ScalarInput>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::ScalarInput>& input)
-{
-    ScalarType data;
-    if (!encodedValue.get<ScalarType>(ASCIILiteral("data"), data))
-        return false;
-
-    input = std::make_unique<Test::ScalarInput>(data);
-    return true;
-}
-
-const String& InputTraits<Test::MapInput>::type()
-{
-    static NeverDestroyed<const String> type(MAKE_STATIC_STRING_IMPL("MapInput"));
-    return type;
-}
-
-void InputTraits<Test::MapInput>::encode(EncodedValue& encodedValue, const Test::MapInput& input)
-{
-    encodedValue.put<MapType>(ASCIILiteral("data"), input.data());
-}
-
-bool InputTraits<Test::MapInput>::decode(EncodedValue& encodedValue, std::unique_ptr<Test::MapInput>& input)
-{
-    std::unique_ptr<MapType> data;
-    if (!encodedValue.get<MapType>(ASCIILiteral("data"), data))
-        return false;
-
-    input = std::make_unique<Test::MapInput>(WTFMove(data));
-    return true;
-}
-
-} // namespace JSC
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h b/Source/JavaScriptCore/replay/scripts/tests/expected/generate-memoized-type-modes.json-TestReplayInputs.h
deleted file mode 100644 (file)
index ddac707..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// DO NOT EDIT THIS FILE. It is automatically generated from generate-memoized-type-modes.json
-// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
-
-#pragma once
-
-#if ENABLE(WEB_REPLAY)
-#include "InternalNamespaceHeaderIncludeDummy.h"
-#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
-
-
-
-namespace Test {
-class ScalarInput;
-class MapInput;
-} // namespace Test
-
-namespace JSC {
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::ScalarInput> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::ScalarInput&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::ScalarInput>&);
-};
-
-template<> struct TEST_EXPORT_MACRO InputTraits<Test::MapInput> {
-    static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
-    static const String& type();
-
-    static void encode(JSC::EncodedValue&, const Test::MapInput&);
-    static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::MapInput>&);
-};
-
-} // namespace JSC
-
-namespace Test {
-class ScalarInput : public NondeterministicInput<ScalarInput> {
-public:
-    TEST_EXPORT_MACRO ScalarInput(ScalarType data);
-    virtual ~ScalarInput();
-
-    ScalarType data() const { return m_data; }
-private:
-    ScalarType m_data;
-};
-
-class MapInput : public NondeterministicInput<MapInput> {
-public:
-    TEST_EXPORT_MACRO MapInput(std::unique_ptr<MapType> data);
-    virtual ~MapInput();
-
-    const MapType& data() const { return *m_data; }
-private:
-    std::unique_ptr<MapType> m_data;
-};
-} // namespace Test
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::ScalarInput)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::ScalarInput>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-SPECIALIZE_TYPE_TRAITS_BEGIN(Test::MapInput)
-    static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::MapInput>::type(); }
-SPECIALIZE_TYPE_TRAITS_END()
-
-#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
-    macro(ScalarInput) \
-    macro(MapInput) \
-    \
-// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
-
-#endif // ENABLE(WEB_REPLAY)
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-c-style-enum-no-storage.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-c-style-enum-no-storage.json
deleted file mode 100644 (file)
index 31d2c43..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "types": {
-        "Test": [
-            {
-                "name": "MouseButton", "mode": "SCALAR",
-                "flags": ["ENUM"],
-                "values": ["NoButton", "LeftButton", "MiddleButton", "RightButton"],
-                "header": "path/to/MouseButton.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SavedMouseButton",
-                "description": "Supplies a mouse button enum value.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "button", "type": "MouseButton" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-enum-type.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-enum-type.json
deleted file mode 100644 (file)
index 089e699..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-{
-    "types": {
-        "JavaScriptCore": [
-            {
-                "name": "Type", "mode": "SCALAR", "storage": "uint64_t",
-                "enclosing_class": "PlatformEvent",
-                "flags": ["ENUM"],
-                "values": ["Mouse", "Keyboard"],
-                "header": "replay/PlatformEvent.h"
-            }
-        ],
-        "WebCore": [
-            {
-                "name": "Type", "mode": "SCALAR", "storage": "uint64_t",
-                "enclosing_class": "PlatformEvent",
-                "flags": ["ENUM"],
-                "values": ["Mouse", "Keyboard"],
-                "header": "replay/PlatformEvent.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "FormCombo",
-                "description": "Combines an event type and form data type.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "eventType", "type": "PlatformEvent::Type" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-input-names.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-input-names.json
deleted file mode 100644 (file)
index 91c84a2..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" },
-            { "name": "uint64_t", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "currentTime", "type": "double" }
-                ]
-            },
-            {
-                "name": "GetCurrentTime",
-                "description": "Sets the PRNG seed used by Math.random().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "randomSeed", "type": "uint64_t" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-type-names.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-duplicate-type-names.json
deleted file mode 100644 (file)
index fc4b5d9..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "uint64_t", "mode": "SCALAR" },
-            { "name": "uint64_t", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SetRandomSeed",
-                "description": "Sets the PRNG seed used by Math.random().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "randomSeed",
-                        "type": "uint64_t"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-enum-type-missing-values.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-enum-type-missing-values.json
deleted file mode 100644 (file)
index 5bd20bd..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            {
-                "name": "MouseButton", "mode": "SCALAR",
-                "flags": ["ENUM"]
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SavedMouseButton",
-                "description": "Supplies a mouse button enum value.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "currentTime", "type": "MouseButton" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-member-name.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-member-name.json
deleted file mode 100644 (file)
index b924aaf..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-name.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-name.json
deleted file mode 100644 (file)
index aa80980..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-queue.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-input-queue.json
deleted file mode 100644 (file)
index 8136dfb..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-mode.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-mode.json
deleted file mode 100644 (file)
index 3ed6d1e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-name.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-missing-type-name.json
deleted file mode 100644 (file)
index 01b1c08..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-input-queue.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-input-queue.json
deleted file mode 100644 (file)
index cd15f06..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEOIZED",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-member-type.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-member-type.json
deleted file mode 100644 (file)
index 8a23057..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "uint64_t", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SetRandomSeed",
-                "description": "Sets the PRNG seed used by Math.random().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "randomSeed",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-type-mode.json b/Source/JavaScriptCore/replay/scripts/tests/fail-on-unknown-type-mode.json
deleted file mode 100644 (file)
index b553bef..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "BONKERS" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {
-                        "name": "currentTime",
-                        "type": "double"
-                    }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers-with-guarded-values.json b/Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers-with-guarded-values.json
deleted file mode 100644 (file)
index 9b2017d..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{
-    "types": {
-        "WebCore": [
-            {
-                "name": "MouseButton", "mode": "SCALAR", "storage": "unsigned",
-                "flags": ["ENUM"],
-                "values": ["NoButton", "LeftButton", "MiddleButton", "RightButton"],
-                "guarded_values": {
-                    "ENABLE(SIDE_BUTTONS)": ["LeftSideButton", "RightSideButton"],
-                    "PLATFORM(WINDOWS)": ["WindowsButton"]
-                },
-                "header": "platform/PlatformMouseEvent.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SavedMouseButton",
-                "description": "Supplies a mouse button enum value.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "button", "type": "MouseButton" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers.json b/Source/JavaScriptCore/replay/scripts/tests/generate-enum-encoding-helpers.json
deleted file mode 100644 (file)
index 73b74ed..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-{
-    "types": {
-        "Test": [
-            {
-                "name": "InputQueue", "mode": "SCALAR",
-                "flags": ["ENUM_CLASS"],
-                "values": ["EventLoopInput", "LoaderMemoizedData", "ScriptMemoizedData"],
-                "header": "replay/NondeterministicInput.h"
-            },
-            {
-                "name": "MouseButton", "mode": "SCALAR", "storage": "unsigned",
-                "flags": ["ENUM"],
-                "values": ["NoButton", "LeftButton", "MiddleButton", "RightButton"],
-                "header": "platform/PlatformMouseEvent.h"
-            },
-            {
-                "name": "Type", "mode": "SCALAR",
-                "flags": ["ENUM"],
-                "enclosing_class": "PlatformEvent",
-                "values": ["Mouse", "Key", "Touch", "Wheel"],
-                "header": "platform/PlatformEvent.h"
-            },
-            {
-                "name": "OtherType", "mode": "SCALAR",
-                "flags": ["OPTION_SET"],
-                "enclosing_class": "PlatformEvent",
-                "values": ["Mouse", "Key", "Touch", "Wheel"],
-                "header": "platform/PlatformEvent.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "SavedMouseButton",
-                "description": "Supplies a mouse button enum value.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "button", "type": "MouseButton" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-enum-with-guard.json b/Source/JavaScriptCore/replay/scripts/tests/generate-enum-with-guard.json
deleted file mode 100644 (file)
index 20ea359..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "uint64_t", "mode": "SCALAR" }
-        ],
-        "WebCore": [
-            {
-                "name": "PlatformWheelEvent", "mode": "OWNED",
-                "header": "platform/PlatformWheelEvent.h"
-            }
-        ],
-        "Test": [
-            {
-                "name": "PlatformWheelPhase", "mode": "SCALAR", "storage": "uint64_t",
-                "flags": ["ENUM"],
-                "guard": "ENABLE(DUMMY_FEATURE)",
-                "values": ["PlatformWheelEventPhaseNone"],
-                "header": "platform/PlatformWheelEvent.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "HandleWheelEvent",
-                "description": "",
-                "queue": "EVENT_LOOP",
-                "members": [
-                    { "name": "platformEvent", "type": "PlatformWheelEvent" },
-                    { "name": "phase", "type": "PlatformWheelPhase" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-enums-with-same-base-name.json b/Source/JavaScriptCore/replay/scripts/tests/generate-enums-with-same-base-name.json
deleted file mode 100644 (file)
index 699439d..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-{
-    "types": {
-        "JavaScriptCore": [
-            {
-                "name": "Type", "mode": "SCALAR", "storage": "uint64_t",
-                "enclosing_class": "PlatformEvent1",
-                "flags": ["ENUM"],
-                "values": ["Mouse", "Keyboard"],
-                "header": "replay/PlatformEvent.h"
-            },
-            {
-                "name": "Type", "mode": "SCALAR",
-                "enclosing_class": "PlatformEvent2",
-                "flags": ["ENUM_CLASS"],
-                "values": ["Mouse", "Keyboard"],
-                "header": "replay/PlatformEvent.h"
-            }
-        ],
-        "Test": [
-            {
-                "name": "Type", "mode": "SCALAR", "storage": "uint64_t",
-                "enclosing_class": "FormData1",
-                "flags": ["ENUM"],
-                "values": ["Text", "Blob"],
-                "header": "replay/FormData1.h"
-            },
-            {
-                "name": "Type", "mode": "SCALAR",
-                "enclosing_class": "FormData2",
-                "flags": ["ENUM_CLASS"],
-                "values": ["Text", "Blob"],
-                "header": "replay/FormData2.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "FormCombo",
-                "description": "Combines an event type and form data type.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "eventType1", "type": "PlatformEvent1::Type" },
-                    { "name": "eventType2", "type": "PlatformEvent2::Type" },
-                    { "name": "formType1", "type": "FormData1::Type" },
-                    { "name": "formType2", "type": "FormData2::Type" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-event-loop-shape-types.json b/Source/JavaScriptCore/replay/scripts/tests/generate-event-loop-shape-types.json
deleted file mode 100644 (file)
index 93b16bf..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "ScalarType", "mode": "SCALAR" },
-            { "name": "MapType", "mode": "MAP" },
-            { "name": "SharedMapType", "mode": "SHARED_MAP" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "ScalarInput",
-                "description": "",
-                "queue": "EVENT_LOOP",
-                "members": [
-                    { "name": "data", "type": "ScalarType" }
-                ]
-            },
-            {
-                "name": "MapInput",
-                "description": "",
-                "queue": "EVENT_LOOP",
-                "members": [
-                    { "name": "data", "type": "MapType" }
-                ]
-            },
-            {
-                "name": "SharedMapInput",
-                "description": "",
-                "queue": "EVENT_LOOP",
-                "members": [
-                    { "name": "data", "type": "SharedMapType" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-input-with-guard.json b/Source/JavaScriptCore/replay/scripts/tests/generate-input-with-guard.json
deleted file mode 100644 (file)
index 75cd504..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" },
-            { "name": "uint64_t", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "GetCurrentTime",
-                "description": "Supplies the system time to Date.now() and new Date().",
-                "queue": "SCRIPT_MEMOIZED",
-                "guard": "ENABLE(DUMMY_FEATURE)",
-                "members": [
-                    { "name": "currentTime", "type": "double" }
-                ]
-            },
-            {
-                "name": "SetRandomSeed",
-                "description": "Sets the PRNG seed used by Math.random().",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    {"name": "randomSeed", "type": "uint64_t" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-input-with-vector-members.json b/Source/JavaScriptCore/replay/scripts/tests/generate-input-with-vector-members.json
deleted file mode 100644 (file)
index eabd072..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "double", "mode": "SCALAR" }
-        ],
-
-        "JavaScriptCore": [
-            { "name": "JSThing", "mode": "SCALAR", "header": "things/JSThing.h" }
-        ],
-
-        "WebCore": [
-            { "name": "WebThing", "mode": "SCALAR", "header": "things/WebThing.h" },
-            {
-                "name": "HistoryItem", "mode": "SHARED",
-                "header": "history/HistoryItem.h"
-            }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "ArrayOfThings",
-                "description": "Supplies arrays of things.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "doubles", "type": "double", "flags": ["VECTOR"] },
-                    { "name": "jsthings", "type": "JSThing", "flags": ["VECTOR"] },
-                    { "name": "webthings", "type": "WebThing", "flags": ["VECTOR"] }
-                ]
-            },
-            {
-                "name": "SavedHistory",
-                "description": "Save history items.",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "entries", "type": "HistoryItem", "flags": ["VECTOR"] }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-inputs-with-flags.json b/Source/JavaScriptCore/replay/scripts/tests/generate-inputs-with-flags.json
deleted file mode 100644 (file)
index 3f49cc1..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "ScalarType", "mode": "SCALAR" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "ScalarInput1",
-                "description": "",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "data", "type": "ScalarType" }
-                ]
-            },
-            {
-                "name": "ScalarInput2",
-                "description": "",
-                "queue": "SCRIPT_MEMOIZED",
-                "flags": ["CREATE_FROM_PAGE"],
-                "members": [
-                    { "name": "data", "type": "ScalarType" }
-                ]
-            }
-        ]
-    }
-}
diff --git a/Source/JavaScriptCore/replay/scripts/tests/generate-memoized-type-modes.json b/Source/JavaScriptCore/replay/scripts/tests/generate-memoized-type-modes.json
deleted file mode 100644 (file)
index 0d66bd8..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{
-    "types": {
-        "Global": [
-            { "name": "ScalarType", "mode": "SCALAR" },
-            { "name": "MapType", "mode": "OWNED" }
-        ]
-    },
-
-    "inputs": {
-        "Test": [
-            {
-                "name": "ScalarInput",
-                "description": "",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "data", "type": "ScalarType" }
-                ]
-            },
-            {
-                "name": "MapInput",
-                "description": "",
-                "queue": "SCRIPT_MEMOIZED",
-                "members": [
-                    { "name": "data", "type": "MapType" }
-                ]
-            }
-        ]
-    }
-}
index 23b186f..c125a3b 100644 (file)
 #include <time.h>
 #include <wtf/MathExtras.h>
 
-#if ENABLE(WEB_REPLAY)
-#include "InputCursor.h"
-#include "JSReplayInputs.h"
-#endif
-
 #if HAVE(SYS_TIME_H)
 #include <sys/time.h>
 #endif
@@ -71,28 +66,6 @@ const ClassInfo DateConstructor::s_info = { "Function", &InternalFunction::s_inf
 @end
 */
 
-#if ENABLE(WEB_REPLAY)
-static double deterministicCurrentTime(JSGlobalObject* globalObject)
-{
-    double currentTime = jsCurrentTime();
-    InputCursor& cursor = globalObject->inputCursor();
-    if (cursor.isCapturing())
-        cursor.appendInput<GetCurrentTime>(currentTime);
-
-    if (cursor.isReplaying()) {
-        if (GetCurrentTime* input = cursor.fetchInput<GetCurrentTime>())
-            currentTime = input->currentTime();
-    }
-    return currentTime;
-}
-#endif
-
-#if ENABLE(WEB_REPLAY)
-#define NORMAL_OR_DETERMINISTIC_FUNCTION(a, b) (b)
-#else
-#define NORMAL_OR_DETERMINISTIC_FUNCTION(a, b) (a)
-#endif
-
 STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE(DateConstructor);
 
 DateConstructor::DateConstructor(VM& vm, Structure* structure)
@@ -152,7 +125,7 @@ JSObject* constructDate(ExecState* exec, JSGlobalObject* globalObject, JSValue n
     double value;
 
     if (numArgs == 0) // new Date() ECMA 15.9.3.3
-        value = NORMAL_OR_DETERMINISTIC_FUNCTION(jsCurrentTime(), deterministicCurrentTime(globalObject));
+        value = jsCurrentTime();
     else if (numArgs == 1) {
         if (args.at(0).inherits(vm, DateInstance::info()))
             value = asDateInstance(args.at(0))->internalNumber();
@@ -210,13 +183,9 @@ EncodedJSValue JSC_HOST_CALL dateParse(ExecState* exec)
     return JSValue::encode(jsNumber(parseDate(vm, dateStr)));
 }
 
-EncodedJSValue JSC_HOST_CALL dateNow(ExecState* exec)
+EncodedJSValue JSC_HOST_CALL dateNow(ExecState*)
 {
-#if !ENABLE(WEB_REPLAY)
-    UNUSED_PARAM(exec);
-#endif
-
-    return JSValue::encode(jsNumber(NORMAL_OR_DETERMINISTIC_FUNCTION(jsCurrentTime(), deterministicCurrentTime(exec->lexicalGlobalObject()))));
+    return JSValue::encode(jsNumber(jsCurrentTime()));
 }
 
 EncodedJSValue JSC_HOST_CALL dateUTC(ExecState* exec) 
index f7cf4ae..2137b41 100644 (file)
 #include "JSGlobalObjectInspectorController.h"
 #endif
 
-#if ENABLE(WEB_REPLAY)
-#include "EmptyInputCursor.h"
-#include "JSReplayInputs.h"
-#endif
-
 namespace JSC {
 
 static JSValue createProxyProperty(VM& vm, JSObject* object)
@@ -315,9 +310,6 @@ static EncodedJSValue JSC_HOST_CALL enqueueJob(ExecState* exec)
 JSGlobalObject::JSGlobalObject(VM& vm, Structure* structure, const GlobalObjectMethodTable* globalObjectMethodTable)
     : Base(vm, structure, 0)
     , m_vm(vm)
-#if ENABLE(WEB_REPLAY)
-    , m_inputCursor(EmptyInputCursor::create())
-#endif
     , m_masqueradesAsUndefinedWatchpoint(adoptRef(new WatchpointSet(IsWatched)))
     , m_havingABadTimeWatchpoint(adoptRef(new WatchpointSet(IsWatched)))
     , m_varInjectionWatchpoint(adoptRef(new WatchpointSet(IsWatched)))
@@ -1404,21 +1396,6 @@ bool JSGlobalObject::remoteDebuggingEnabled() const
 #endif
 }
 
-#if ENABLE(WEB_REPLAY)
-void JSGlobalObject::setInputCursor(Ref<InputCursor>&& cursor)
-{
-    m_inputCursor = WTFMove(cursor);
-    // Save or set the random seed. This performed here rather than the constructor
-    // to avoid threading the input cursor through all the abstraction layers.
-    if (m_inputCursor->isCapturing())
-        m_inputCursor->appendInput<SetRandomSeed>(m_weakRandom.seed());
-    else if (m_inputCursor->isReplaying()) {
-        if (SetRandomSeed* input = m_inputCursor->fetchInput<SetRandomSeed>())
-            m_weakRandom.setSeed(static_cast<unsigned>(input->randomSeed()));
-    }
-}
-#endif
-
 void JSGlobalObject::setName(const String& name)
 {
     m_name = name;
index 1282a3b..7730362 100644 (file)
@@ -382,10 +382,6 @@ public:
 
     VM& m_vm;
 
-#if ENABLE(WEB_REPLAY)
-    Ref<InputCursor> m_inputCursor;
-#endif
-
 #if ENABLE(REMOTE_INSPECTOR)
     std::unique_ptr<Inspector::JSGlobalObjectInspectorController> m_inspectorController;
     std::unique_ptr<JSGlobalObjectDebuggable> m_inspectorDebuggable;
@@ -652,11 +648,6 @@ public:
     JS_EXPORT_PRIVATE void setRemoteDebuggingEnabled(bool);
     JS_EXPORT_PRIVATE bool remoteDebuggingEnabled() const;
 
-#if ENABLE(WEB_REPLAY)
-    JS_EXPORT_PRIVATE void setInputCursor(Ref<InputCursor>&&);
-    InputCursor& inputCursor() const { return m_inputCursor.get(); }
-#endif
-
 #if ENABLE(REMOTE_INSPECTOR)
     Inspector::JSGlobalObjectInspectorController& inspectorController() const { return *m_inspectorController.get(); }
     JSGlobalObjectDebuggable& inspectorDebuggable() { return *m_inspectorDebuggable.get(); }
index 855b9d7..715b9f2 100644 (file)
@@ -1,3 +1,12 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * wtf/FeatureDefines.h:
+
 2017-07-10  Brady Eidson  <beidson@apple.com>
 
         Cleanup lifetime issues of UniqueIDBDatabase and IDBBackingStore.
index 0a2ce75..33ed833 100644 (file)
@@ -716,10 +716,6 @@ the public iOS SDK. We will also need to update the FeatureDefines.xcconfig file
 #define ENABLE_WEB_AUDIO 0
 #endif
 
-#if !defined(ENABLE_WEB_REPLAY)
-#define ENABLE_WEB_REPLAY 0
-#endif
-
 #if !defined(ENABLE_WEB_SOCKETS)
 #define ENABLE_WEB_SOCKETS 1
 #endif
index 73375f5..7001a1b 100644 (file)
@@ -3486,36 +3486,6 @@ if (ENABLE_GRAPHICS_CONTEXT_3D)
     )
 endif ()
 
-if (ENABLE_WEB_REPLAY)
-    set(WebCore_WEB_REPLAY_INPUTS ${CMAKE_CURRENT_SOURCE_DIR}/replay/WebInputs.json ${JAVASCRIPTCORE_DIR}/replay/JSInputs.json)
-    add_custom_command(
-        OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/WebReplayInputs.h ${DERIVED_SOURCES_WEBCORE_DIR}/WebReplayInputs.cpp
-        MAIN_DEPENDENCY ${JAVASCRIPTCORE_DIR}/replay/scripts/CodeGeneratorReplayInputs.py
-        DEPENDS ${WebCore_WEB_REPLAY_INPUTS}
-        COMMAND ${PYTHON_EXECUTABLE} ${JAVASCRIPTCORE_DIR}/replay/scripts/CodeGeneratorReplayInputs.py --outputDir ${DERIVED_SOURCES_WEBCORE_DIR}/ --framework WebCore ${WebCore_WEB_REPLAY_INPUTS}
-        VERBATIM)
-
-    list(APPEND WebCore_SOURCES
-        inspector/InspectorReplayAgent.cpp
-
-        replay/CapturingInputCursor.cpp
-        replay/EventLoopInput.cpp
-        replay/EventLoopInputDispatcher.cpp
-        replay/MemoizedDOMResult.cpp
-        replay/ReplayController.cpp
-        replay/ReplayInputCreationMethods.cpp
-        replay/ReplayInputDispatchMethods.cpp
-        replay/ReplaySession.cpp
-        replay/ReplaySessionSegment.cpp
-        replay/ReplayingInputCursor.cpp
-        replay/SegmentedInputStorage.cpp
-        replay/SerializationMethods.cpp
-        replay/UserInputBridge.cpp
-
-        ${DERIVED_SOURCES_WEBCORE_DIR}/WebReplayInputs.cpp
-    )
-endif ()
-
 if (ENABLE_USER_MESSAGE_HANDLERS)
     list(APPEND WebCore_IDL_FILES
         page/UserMessageHandler.idl
index f0efe77..1e1a43b 100644 (file)
@@ -1,3 +1,103 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * CMakeLists.txt:
+        * Configurations/FeatureDefines.xcconfig:
+        * DerivedSources.make:
+        * PlatformMac.cmake:
+        * WebCore.xcodeproj/project.pbxproj:
+        * dom/Document.cpp:
+        (WebCore::Document::Document):
+        (WebCore::Document::lastModified):
+        (WebCore::Document::inputCursor): Deleted.
+        (WebCore::Document::setInputCursor): Deleted.
+        * dom/Document.h:
+        * inspector/InspectorController.cpp:
+        (WebCore::InspectorController::InspectorController):
+        * inspector/InspectorInstrumentation.cpp:
+        (WebCore::InspectorInstrumentation::willDispatchEventImpl):
+        (WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
+        (WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
+        (WebCore::InspectorInstrumentation::didCommitLoadImpl):
+        (WebCore::InspectorInstrumentation::sessionCreatedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::sessionLoadedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::sessionModifiedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::segmentCreatedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::segmentCompletedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::segmentLoadedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::segmentUnloadedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::captureStartedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::captureStoppedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::playbackStartedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::playbackPausedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::playbackHitPositionImpl): Deleted.
+        (WebCore::InspectorInstrumentation::playbackFinishedImpl): Deleted.
+        (WebCore::InspectorInstrumentation::replayAgentEnabled): Deleted.
+        * inspector/InspectorInstrumentation.h:
+        (WebCore::InspectorInstrumentation::sessionCreated): Deleted.
+        (WebCore::InspectorInstrumentation::sessionLoaded): Deleted.
+        (WebCore::InspectorInstrumentation::sessionModified): Deleted.
+        (WebCore::InspectorInstrumentation::segmentCreated): Deleted.
+        (WebCore::InspectorInstrumentation::segmentCompleted): Deleted.
+        (WebCore::InspectorInstrumentation::segmentLoaded): Deleted.
+        (WebCore::InspectorInstrumentation::segmentUnloaded): Deleted.
+        (WebCore::InspectorInstrumentation::captureStarted): Deleted.
+        (WebCore::InspectorInstrumentation::captureStopped): Deleted.
+        (WebCore::InspectorInstrumentation::playbackStarted): Deleted.
+        (WebCore::InspectorInstrumentation::playbackPaused): Deleted.
+        (WebCore::InspectorInstrumentation::playbackFinished): Deleted.
+        (WebCore::InspectorInstrumentation::playbackHitPosition): Deleted.
+        * inspector/InspectorReplayAgent.cpp: Removed.
+        * inspector/InspectorReplayAgent.h: Removed.
+        * inspector/InstrumentingAgents.cpp:
+        (WebCore::InstrumentingAgents::reset):
+        * inspector/InstrumentingAgents.h:
+        (WebCore::InstrumentingAgents::inspectorReplayAgent): Deleted.
+        (WebCore::InstrumentingAgents::setInspectorReplayAgent): Deleted.
+        * page/EventHandler.h:
+        * page/Page.cpp:
+        (WebCore::Page::Page):
+        * page/Page.h:
+        (WebCore::Page::replayController): Deleted.
+        * page/scrolling/ScrollingCoordinator.cpp:
+        (WebCore::ScrollingCoordinator::synchronousScrollingReasons):
+        (WebCore::ScrollingCoordinator::replaySessionStateDidChange): Deleted.
+        * page/scrolling/ScrollingCoordinator.h:
+        * platform/Logging.h:
+        * plugins/DOMMimeTypeArray.cpp:
+        (WebCore::DOMMimeTypeArray::getPluginData):
+        * plugins/DOMPluginArray.cpp:
+        (WebCore::DOMPluginArray::pluginData):
+        * replay/AllReplayInputs.h: Removed.
+        * replay/CapturingInputCursor.cpp: Removed.
+        * replay/CapturingInputCursor.h: Removed.
+        * replay/EventLoopInput.cpp: Removed.
+        * replay/EventLoopInput.h: Removed.
+        * replay/EventLoopInputDispatcher.cpp: Removed.
+        * replay/EventLoopInputDispatcher.h: Removed.
+        * replay/FunctorInputCursor.h: Removed.
+        * replay/MemoizedDOMResult.cpp: Removed.
+        * replay/MemoizedDOMResult.h: Removed.
+        * replay/ReplayController.cpp: Removed.
+        * replay/ReplayController.h: Removed.
+        * replay/ReplayInputCreationMethods.cpp: Removed.
+        * replay/ReplayInputDispatchMethods.cpp: Removed.
+        * replay/ReplaySession.cpp: Removed.
+        * replay/ReplaySession.h: Removed.
+        * replay/ReplaySessionSegment.cpp: Removed.
+        * replay/ReplaySessionSegment.h: Removed.
+        * replay/ReplayingInputCursor.cpp: Removed.
+        * replay/ReplayingInputCursor.h: Removed.
+        * replay/SegmentedInputStorage.cpp: Removed.
+        * replay/SegmentedInputStorage.h: Removed.
+        * replay/SerializationMethods.cpp: Removed.
+        * replay/SerializationMethods.h: Removed.
+        * replay/WebInputs.json: Removed.
+
 2017-07-10  Brady Eidson  <beidson@apple.com>
 
         Cleanup lifetime issues of UniqueIDBDatabase and IDBBackingStore.
index b20fc82..6d5ad4a 100644 (file)
@@ -214,9 +214,6 @@ ENABLE_WEBGPU = ENABLE_WEBGPU;
 ENABLE_WEBGPU[sdk=iphonesimulator*] = ;
 ENABLE_WEB_ANIMATIONS = ENABLE_WEB_ANIMATIONS;
 ENABLE_WEB_AUDIO = ENABLE_WEB_AUDIO;
-ENABLE_WEB_REPLAY = $(ENABLE_WEB_REPLAY_$(PLATFORM_NAME)_$(CONFIGURATION));
-ENABLE_WEB_REPLAY_macosx_Debug = ENABLE_WEB_REPLAY;
-ENABLE_WEB_REPLAY_macosx_Release = ENABLE_WEB_REPLAY;
 ENABLE_WEB_SOCKETS = ENABLE_WEB_SOCKETS;
 
 ENABLE_WEB_TIMING = ENABLE_WEB_TIMING;
@@ -249,4 +246,4 @@ ENABLE_DRAG_SUPPORT[sdk=iphonesimulator11*] = ENABLE_DRAG_SUPPORT;
 ENABLE_DATA_INTERACTION[sdk=iphoneos11*] = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator11*] = ENABLE_DATA_INTERACTION;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_RTC) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index 4428ab2..186b829 100644 (file)
@@ -1380,23 +1380,6 @@ CommandLineAPIModuleSource.h : CommandLineAPIModuleSource.js
        $(PERL) $(JavaScriptCore_SCRIPTS_DIR)/xxd.pl CommandLineAPIModuleSource_js ./CommandLineAPIModuleSource.min.js CommandLineAPIModuleSource.h
        $(DELETE) CommandLineAPIModuleSource.min.js
 
-# Web Replay inputs generator
-
-INPUT_GENERATOR_SCRIPTS = \
-    $(JavaScriptCore_SCRIPTS_DIR)/CodeGeneratorReplayInputs.py \
-    $(JavaScriptCore_SCRIPTS_DIR)/CodeGeneratorReplayInputsTemplates.py \
-#
-
-INPUT_GENERATOR_SPECIFICATIONS = \
-    $(WebCore)/replay/WebInputs.json \
-    $(JavaScriptCore_SCRIPTS_DIR)/JSInputs.json \
-#
-
-all : WebReplayInputs.h
-
-WebReplayInputs.h : $(INPUT_GENERATOR_SPECIFICATIONS) $(INPUT_GENERATOR_SCRIPTS)
-       $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/CodeGeneratorReplayInputs.py --outputDir . --framework WebCore $(INPUT_GENERATOR_SPECIFICATIONS)
-
 -include $(JS_DOM_HEADERS:.h=.dep)
 
 # WebCore JS Builtins
diff --git a/Source/WebCore/ForwardingHeaders/replay/EmptyInputCursor.h b/Source/WebCore/ForwardingHeaders/replay/EmptyInputCursor.h
deleted file mode 100644 (file)
index d8a794f..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef WebCore_FWD_EmptyInputCursor_h
-#define WebCore_FWD_EmptyInputCursor_h
-#include <JavaScriptCore/EmptyInputCursor.h>
-#endif
diff --git a/Source/WebCore/ForwardingHeaders/replay/EncodedValue.h b/Source/WebCore/ForwardingHeaders/replay/EncodedValue.h
deleted file mode 100644 (file)
index 5e7ce63..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef WebCore_FWD_EncodedValue_h
-#define WebCore_FWD_EncodedValue_h
-#include <JavaScriptCore/EncodedValue.h>
-#endif
diff --git a/Source/WebCore/ForwardingHeaders/replay/InputCursor.h b/Source/WebCore/ForwardingHeaders/replay/InputCursor.h
deleted file mode 100644 (file)
index 8c68c34..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef WebCore_FWD_InputCursor_h
-#define WebCore_FWD_InputCursor_h
-#include <JavaScriptCore/InputCursor.h>
-#endif
diff --git a/Source/WebCore/ForwardingHeaders/replay/NondeterministicInput.h b/Source/WebCore/ForwardingHeaders/replay/NondeterministicInput.h
deleted file mode 100644 (file)
index 7becdb7..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef WebCore_FWD_NondeterministicInput_h
-#define WebCore_FWD_NondeterministicInput_h
-#include <JavaScriptCore/NondeterministicInput.h>
-#endif
index 9dcac8a..85ae311 100644 (file)
@@ -1,3 +1,12 @@
+2017-07-03  Brian Burg  <bburg@apple.com>
+
+        Web Replay: remove some unused code
+        https://bugs.webkit.org/show_bug.cgi?id=173903
+
+        Rubber-stamped by Joseph Pecoraro.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2017-07-08  Yusuke Suzuki  <utatane.tea@gmail.com>
 
         Drop NOSNIFF compile flag
index b20fc82..6d5ad4a 100644 (file)
@@ -214,9 +214,6 @@ ENABLE_WEBGPU = ENABLE_WEBGPU;
 ENABLE_WEBGPU[sdk=iphonesimulator*] = ;
 ENABLE_WEB_ANIMATIONS = ENABLE_WEB_ANIMATIONS;
 ENABLE_WEB_AUDIO = ENABLE_WEB_AUDIO;
-ENABLE_WEB_REPLAY = $(ENABLE_WEB_REPLAY_$(PLATFORM_NAME)_$(CONFIGURATION));
-ENABLE_WEB_REPLAY_macosx_Debug = ENABLE_WEB_REPLAY;
-ENABLE_WEB_REPLAY_macosx_Release = ENABLE_WEB_REPLAY;
 ENABLE_WEB_SOCKETS = ENABLE_WEB_SOCKETS;
 
 ENABLE_WEB_TIMING = ENABLE_WEB_TIMING;
@@ -249,4 +246,4 @@ ENABLE_DRAG_SUPPORT[sdk=iphonesimulator11*] = ENABLE_DRAG_SUPPORT;
 ENABLE_DATA_INTERACTION[sdk=iphoneos11*] = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator11*] = ENABLE_DATA_INTERACTION;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_RTC) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTRO