webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
generate-input-with-vector-members.json-TestReplayInputs.h
Go to the documentation of this file.
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-vector-members.json
28 // by the script: JavaScriptCore/replay/scripts/CodeGeneratorReplayInputs.py
29 
30 #pragma once
31 
32 #if ENABLE(WEB_REPLAY)
33 #include "InternalNamespaceHeaderIncludeDummy.h"
34 #include <history/HistoryItem.h>
35 #include <platform/ExternalNamespaceHeaderIncludeDummy.h>
36 
37 namespace WebCore {
38 class HistoryItem;
39 }
40 
41 
42 namespace Test {
43 class ArrayOfThings;
44 class SavedHistory;
45 } // namespace Test
46 
47 namespace JSC {
48 template<> struct TEST_EXPORT_MACRO InputTraits<Test::ArrayOfThings> {
49  static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
50  static const String& type();
51 
52  static void encode(JSC::EncodedValue&, const Test::ArrayOfThings&);
53  static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::ArrayOfThings>&);
54 };
55 
56 template<> struct TEST_EXPORT_MACRO InputTraits<Test::SavedHistory> {
57  static InputQueue queue() { return InputQueue::ScriptMemoizedData; }
58  static const String& type();
59 
60  static void encode(JSC::EncodedValue&, const Test::SavedHistory&);
61  static bool decode(JSC::EncodedValue&, std::unique_ptr<Test::SavedHistory>&);
62 };
63 
64 } // namespace JSC
65 
66 namespace Test {
67 class ArrayOfThings : public NondeterministicInput<ArrayOfThings> {
68 public:
69  TEST_EXPORT_MACRO ArrayOfThings(Vector<double>& doubles, Vector<JSThing>& jsthings, Vector<WebThing>& webthings);
70  virtual ~ArrayOfThings();
71 
72  const Vector<double>& doubles() const { return m_doubles; }
73  const Vector<JSThing>& jsthings() const { return m_jsthings; }
74  const Vector<WebThing>& webthings() const { return m_webthings; }
75 private:
76  Vector<double> m_doubles;
77  Vector<JSThing> m_jsthings;
78  Vector<WebThing> m_webthings;
79 };
80 
81 class SavedHistory : public NondeterministicInput<SavedHistory> {
82 public:
83  TEST_EXPORT_MACRO SavedHistory(Vector<RefPtr<HistoryItem>>& entries);
84  virtual ~SavedHistory();
85 
86  const Vector<RefPtr<HistoryItem>>& entries() const { return m_entries; }
87 private:
88  Vector<RefPtr<HistoryItem>> m_entries;
89 };
90 } // namespace Test
91 
92 SPECIALIZE_TYPE_TRAITS_BEGIN(Test::ArrayOfThings)
93  static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::ArrayOfThings>::type(); }
95 
97  static bool isType(const NondeterministicInputBase& input) { return input.type() == InputTraits<Test::SavedHistory>::type(); }
99 
100 #define TEST_REPLAY_INPUT_NAMES_FOR_EACH(macro) \
101  macro(ArrayOfThings) \
102  macro(SavedHistory) \
103  \
104 // end of TEST_REPLAY_INPUT_NAMES_FOR_EACH
105 
106 #endif // ENABLE(WEB_REPLAY)
short encode(IlbcEncoder *iLBCenc_inst, int16_t *encoded_data, int16_t *data)
Definition: iLBC_testprogram.c:42
s decode
Definition: plot_neteq_delay.m:61
Definition: AirOpcode.h:4
#define SPECIALIZE_TYPE_TRAITS_BEGIN(ClassName)
Definition: TypeCasts.h:94
EGLenum type
Definition: eglext.h:63
Definition: bn_test.cc:620
const
Definition: upload.py:398
string input
Definition: tokenizer_unittest.cc:198
#define SPECIALIZE_TYPE_TRAITS_END()
Definition: TypeCasts.h:102
AVCFPlayerRef CMTime dispatch_queue_t queue
Definition: AVFoundationCFSoftLinking.h:135
This file is generated by create-http-header-name-table, do not edit.
Definition: CharsetData.cpp:6