]> git.saurik.com Git - apple/javascriptcore.git/blame - replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / replay / scripts / tests / expected / generate-enums-with-same-base-name.json-TestReplayInputs.h
CommitLineData
81345200
A
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-enums-with-same-base-name.json
28// by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
29
30#ifndef generate_enums_with_same_base_name_json_TestReplayInputs_h
31#define generate_enums_with_same_base_name_json_TestReplayInputs_h
32
33#if ENABLE(WEB_REPLAY)
ed1e77d3
A
34#include "FormData1.h"
35#include "FormData2.h"
81345200
A
36#include "InternalNamespaceHeaderIncludeDummy.h"
37#include <platform/ExternalNamespaceHeaderIncludeDummy.h>
81345200
A
38#include <replay/PlatformEvent.h>
39
40
41
42namespace Test {
43class FormCombo;
44} // namespace Test
45
46namespace JSC {
ed1e77d3 47template<> struct TEST_EXPORT_MACRO InputTraits<Test::FormCombo> {
81345200 48 static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
ed1e77d3 49 static const String& type();
81345200
A
50
51 static void encode(JSC::EncodedValue&, const Test::FormCombo&);
52 static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::FormCombo>&);
53};
ed1e77d3
A
54template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::FormData1::Type> {
55 typedef Test::FormData1::Type DecodedType;
81345200 56
ed1e77d3
A
57 static EncodedValue encodeValue(const Test::FormData1::Type& value);
58 static bool decodeValue(EncodedValue&, Test::FormData1::Type& value);
81345200
A
59};
60
ed1e77d3
A
61template<> struct TEST_EXPORT_MACRO EncodingTraits<Test::FormData2::Type> {
62 typedef Test::FormData2::Type DecodedType;
81345200 63
ed1e77d3
A
64 static EncodedValue encodeValue(const Test::FormData2::Type& value);
65 static bool decodeValue(EncodedValue&, Test::FormData2::Type& value);
81345200
A
66};
67} // namespace JSC
68
69namespace Test {
70class FormCombo : public NondeterministicInput<FormCombo> {
71public:
ed1e77d3 72 TEST_EXPORT_MACRO FormCombo(PlatformEvent1::Type eventType1, PlatformEvent2::Type eventType2, FormData1::Type formType1, FormData2::Type formType2);
81345200
A
73 virtual ~FormCombo();
74
ed1e77d3
A
75 PlatformEvent1::Type eventType1() const { return m_eventType1; }
76 PlatformEvent2::Type eventType2() const { return m_eventType2; }
77 FormData1::Type formType1() const { return m_formType1; }
78 FormData2::Type formType2() const { return m_formType2; }
81345200 79private:
ed1e77d3
A
80 PlatformEvent1::Type m_eventType1;
81 PlatformEvent2::Type m_eventType2;
82 FormData1::Type m_formType1;
83 FormData2::Type m_formType2;
81345200
A
84};
85} // namespace Test
86
ed1e77d3
A
87SPECIALIZE_TYPE_TRAITS_BEGIN(Test::FormCombo)
88 static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::FormCombo>::type(); }
89SPECIALIZE_TYPE_TRAITS_END()
90
81345200
A
91#define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
92 macro(FormCombo) \
93 \
94// end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
95
96#endif // ENABLE(WEB_REPLAY)
97
98#endif // generate-enums-with-same-base-name.json-TestReplayInputs_h