1/* 2 * Copyright (C) 2014 Apple Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 14 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS 15 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 16 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 17 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 */ 26 27// DO NOT EDIT THIS FILE. It is automatically generated from generate-input-with-guard.json 28// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py 29 30#ifndef generate_input_with_guard_json_TestReplayInputs_h 31#define generate_input_with_guard_json_TestReplayInputs_h 32 33#if ENABLE(WEB_REPLAY) 34#include "InternalNamespaceHeaderIncludeDummy.h" 35#include <platform/ExternalNamespaceHeaderIncludeDummy.h> 36 37 38 39namespace Test { 40#if ENABLE(DUMMY_FEATURE) 41class GetCurrentTime; 42#endif // ENABLE(DUMMY_FEATURE) 43class SetRandomSeed; 44} // namespace Test 45 46namespace JSC { 47#if ENABLE(DUMMY_FEATURE) 48template<> struct InputTraits<Test::GetCurrentTime> { 49 static InputQueue queue() { return InputQueue::ScriptMemoizedData; } 50 static const AtomicString& type(); 51 52 static void encode(JSC::EncodedValue&, const Test::GetCurrentTime&); 53 static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::GetCurrentTime>&); 54}; 55#endif // ENABLE(DUMMY_FEATURE) 56 57template<> struct InputTraits<Test::SetRandomSeed> { 58 static InputQueue queue() { return InputQueue::ScriptMemoizedData; } 59 static const AtomicString& type(); 60 61 static void encode(JSC::EncodedValue&, const Test::SetRandomSeed&); 62 static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SetRandomSeed>&); 63}; 64 65} // namespace JSC 66 67namespace Test { 68#if ENABLE(DUMMY_FEATURE) 69class GetCurrentTime : public NondeterministicInput<GetCurrentTime> { 70public: 71 GetCurrentTime(double currentTime); 72 virtual ~GetCurrentTime(); 73 74 double currentTime() const { return m_currentTime; } 75private: 76 double m_currentTime; 77}; 78#endif // ENABLE(DUMMY_FEATURE) 79 80class SetRandomSeed : public NondeterministicInput<SetRandomSeed> { 81public: 82 SetRandomSeed(uint64_t randomSeed); 83 virtual ~SetRandomSeed(); 84 85 uint64_t randomSeed() const { return m_randomSeed; } 86private: 87 uint64_t m_randomSeed; 88}; 89} // namespace Test 90 91#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \ 92 macro(GetCurrentTime) \ 93 macro(SetRandomSeed) \ 94 \ 95// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH 96 97#endif // ENABLE(WEB_REPLAY) 98 99#endif // generate-input-with-guard.json-TestReplayInputs_h 100