Replace WTF::move with WTFMove
[WebKit-https.git] / Source / JavaScriptCore / inspector / scripts / tests / expected / commands-with-async-attribute.json-result
1 ### Begin File: InspectorAlternateBackendDispatchers.h
2 /*
3  * Copyright (C) 2013 Google Inc. All rights reserved.
4  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
5  * Copyright (C) 2014 University of Washington. All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  *
16  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
17  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
18  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
20  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
26  * THE POSSIBILITY OF SUCH DAMAGE.
27  */
28
29 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
30 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
31
32 #ifndef InspectorAlternateBackendDispatchers_h
33 #define InspectorAlternateBackendDispatchers_h
34
35 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
36
37 #include "InspectorProtocolTypes.h"
38 #include <inspector/InspectorFrontendRouter.h>
39 #include <JavaScriptCore/InspectorBackendDispatcher.h>
40
41 namespace Inspector {
42
43 class AlternateBackendDispatcher {
44 public:
45     void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTFMove(dispatcher); }
46     BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
47 private:
48     RefPtr<BackendDispatcher> m_backendDispatcher;
49 };
50
51
52 class AlternateDatabaseBackendDispatcher : public AlternateBackendDispatcher {
53 public:
54     virtual ~AlternateDatabaseBackendDispatcher() { }
55     virtual void executeSQLSyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0;
56     virtual void executeSQLAsyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0;
57     virtual void executeSQLSync(long callId, int in_databaseId, const String& in_query) = 0;
58     virtual void executeSQLAsync(long callId, int in_databaseId, const String& in_query) = 0;
59 };
60
61 } // namespace Inspector
62
63 #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
64
65 #endif // !defined(InspectorAlternateBackendDispatchers_h)
66 ### End File: InspectorAlternateBackendDispatchers.h
67
68 ### Begin File: InspectorBackendCommands.js
69 /*
70  * Copyright (C) 2013 Google Inc. All rights reserved.
71  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
72  * Copyright (C) 2014 University of Washington. All rights reserved.
73  *
74  * Redistribution and use in source and binary forms, with or without
75  * modification, are permitted provided that the following conditions
76  * are met:
77  * 1. Redistributions of source code must retain the above copyright
78  *    notice, this list of conditions and the following disclaimer.
79  * 2. Redistributions in binary form must reproduce the above copyright
80  *    notice, this list of conditions and the following disclaimer in the
81  *    documentation and/or other materials provided with the distribution.
82  *
83  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
84  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
85  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
86  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
87  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
88  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
89  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
90  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
91  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
92  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
93  * THE POSSIBILITY OF SUCH DAMAGE.
94  */
95
96 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
97 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
98
99 // Database.
100 InspectorBackend.registerDatabaseDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Database");
101 InspectorBackend.registerEnum("Database.PrimaryColors", {Red: "red", Green: "green", Blue: "blue"});
102 InspectorBackend.registerCommand("Database.executeSQLSyncOptionalReturnValues", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
103 InspectorBackend.registerCommand("Database.executeSQLAsyncOptionalReturnValues", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
104 InspectorBackend.registerCommand("Database.executeSQLSync", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "alternateColors", "screenColor", "printColor"]);
105 InspectorBackend.registerCommand("Database.executeSQLAsync", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
106 InspectorBackend.activateDomain("Database");
107 ### End File: InspectorBackendCommands.js
108
109 ### Begin File: InspectorBackendDispatchers.h
110 /*
111  * Copyright (C) 2013 Google Inc. All rights reserved.
112  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
113  * Copyright (C) 2014 University of Washington. All rights reserved.
114  *
115  * Redistribution and use in source and binary forms, with or without
116  * modification, are permitted provided that the following conditions
117  * are met:
118  * 1. Redistributions of source code must retain the above copyright
119  *    notice, this list of conditions and the following disclaimer.
120  * 2. Redistributions in binary form must reproduce the above copyright
121  *    notice, this list of conditions and the following disclaimer in the
122  *    documentation and/or other materials provided with the distribution.
123  *
124  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
125  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
126  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
127  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
128  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
129  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
130  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
131  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
132  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
133  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
134  * THE POSSIBILITY OF SUCH DAMAGE.
135  */
136
137 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
138 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
139
140 #ifndef InspectorBackendDispatchers_h
141 #define InspectorBackendDispatchers_h
142
143 #include "InspectorProtocolObjects.h"
144 #include <inspector/InspectorBackendDispatcher.h>
145 #include <wtf/text/WTFString.h>
146
147 namespace Inspector {
148
149 typedef String ErrorString;
150
151 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
152 class AlternateDatabaseBackendDispatcher;
153 #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
154
155 class DatabaseBackendDispatcherHandler {
156 public:
157     // Named after parameter 'screenColor' while generating command/event executeSQLSyncOptionalReturnValues.
158     enum class ScreenColor {
159         Red = 0,
160         Green = 1,
161         Blue = 2,
162     }; // enum class ScreenColor
163     // Named after parameter 'printColor' while generating command/event executeSQLSyncOptionalReturnValues.
164     enum class PrintColor {
165         Cyan = 3,
166         Magenta = 4,
167         Yellow = 5,
168         Black = 6,
169     }; // enum class PrintColor
170     virtual void executeSQLSyncOptionalReturnValues(ErrorString&, int in_databaseId, const String& in_query, RefPtr<Inspector::Protocol::Array<String>>& opt_out_columnNames, Inspector::Protocol::OptOutput<String>* opt_out_notes, Inspector::Protocol::OptOutput<double>* opt_out_timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* opt_out_values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* opt_out_payload, Inspector::Protocol::OptOutput<int>* opt_out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& opt_out_sqlError, Inspector::Protocol::Database::PrimaryColors* opt_out_screenColor, RefPtr<Inspector::Protocol::Database::ColorList>& opt_out_alternateColors, DatabaseBackendDispatcherHandler::PrintColor* opt_out_printColor) = 0;
171     class ExecuteSQLAsyncOptionalReturnValuesCallback : public BackendDispatcher::CallbackBase {
172     public:
173         ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&&, int id);
174         void sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, Inspector::Protocol::OptOutput<String>* notes, Inspector::Protocol::OptOutput<double>* timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* payload, Inspector::Protocol::OptOutput<int>* databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::OptOutput<String>* screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Inspector::Protocol::OptOutput<String>* printColor);
175     };
176     virtual void executeSQLAsyncOptionalReturnValues(ErrorString&, int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncOptionalReturnValuesCallback>&& callback) = 0;
177     virtual void executeSQLSync(ErrorString&, int in_databaseId, const String& in_query, RefPtr<Inspector::Protocol::Array<String>>& out_columnNames, String* out_notes, double* out_timestamp, Inspector::InspectorObject* out_values, Inspector::InspectorValue* out_payload, int* out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& out_sqlError, RefPtr<Inspector::Protocol::Database::ColorList>& out_alternateColors, Inspector::Protocol::Database::PrimaryColors* out_screenColor, DatabaseBackendDispatcherHandler::PrintColor* out_printColor) = 0;
178     class ExecuteSQLAsyncCallback : public BackendDispatcher::CallbackBase {
179     public:
180         ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&&, int id);
181         void sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, const String& notes, double timestamp, Inspector::InspectorObject values, Inspector::InspectorValue payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, const String& screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, const String& printColor);
182     };
183     virtual void executeSQLAsync(ErrorString&, int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncCallback>&& callback) = 0;
184 protected:
185     virtual ~DatabaseBackendDispatcherHandler();
186 };
187
188 class DatabaseBackendDispatcher final : public SupplementalBackendDispatcher {
189 public:
190     static Ref<DatabaseBackendDispatcher> create(BackendDispatcher&, DatabaseBackendDispatcherHandler*);
191     virtual void dispatch(long requestId, const String& method, Ref<InspectorObject>&& message) override;
192 private:
193     void executeSQLSyncOptionalReturnValues(long requestId, RefPtr<InspectorObject>&& parameters);
194     void executeSQLAsyncOptionalReturnValues(long requestId, RefPtr<InspectorObject>&& parameters);
195     void executeSQLSync(long requestId, RefPtr<InspectorObject>&& parameters);
196     void executeSQLAsync(long requestId, RefPtr<InspectorObject>&& parameters);
197 private:
198     DatabaseBackendDispatcher(BackendDispatcher&, DatabaseBackendDispatcherHandler*);
199     DatabaseBackendDispatcherHandler* m_agent;
200 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
201 public:
202     void setAlternateDispatcher(AlternateDatabaseBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
203 private:
204     AlternateDatabaseBackendDispatcher* m_alternateDispatcher;
205 #endif
206 };
207
208 } // namespace Inspector
209
210 #endif // !defined(InspectorBackendDispatchers_h)
211 ### End File: InspectorBackendDispatchers.h
212
213 ### Begin File: InspectorBackendDispatchers.cpp
214 /*
215  * Copyright (C) 2013 Google Inc. All rights reserved.
216  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
217  * Copyright (C) 2014 University of Washington. All rights reserved.
218  *
219  * Redistribution and use in source and binary forms, with or without
220  * modification, are permitted provided that the following conditions
221  * are met:
222  * 1. Redistributions of source code must retain the above copyright
223  *    notice, this list of conditions and the following disclaimer.
224  * 2. Redistributions in binary form must reproduce the above copyright
225  *    notice, this list of conditions and the following disclaimer in the
226  *    documentation and/or other materials provided with the distribution.
227  *
228  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
229  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
230  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
231  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
232  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
233  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
234  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
235  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
236  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
237  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
238  * THE POSSIBILITY OF SUCH DAMAGE.
239  */
240
241 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
242 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
243
244 #include "config.h"
245 #include "InspectorBackendDispatchers.h"
246
247 #include <inspector/InspectorFrontendRouter.h>
248 #include <inspector/InspectorValues.h>
249 #include <wtf/NeverDestroyed.h>
250 #include <wtf/text/CString.h>
251
252 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
253 #include "InspectorAlternateBackendDispatchers.h"
254 #endif
255
256 namespace Inspector {
257
258 DatabaseBackendDispatcherHandler::~DatabaseBackendDispatcherHandler() { }
259
260 Ref<DatabaseBackendDispatcher> DatabaseBackendDispatcher::create(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent)
261 {
262     return adoptRef(*new DatabaseBackendDispatcher(backendDispatcher, agent));
263 }
264
265 DatabaseBackendDispatcher::DatabaseBackendDispatcher(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent)
266     : SupplementalBackendDispatcher(backendDispatcher)
267     , m_agent(agent)
268 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
269     , m_alternateDispatcher(nullptr)
270 #endif
271 {
272     m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Database"), this);
273 }
274
275 void DatabaseBackendDispatcher::dispatch(long requestId, const String& method, Ref<InspectorObject>&& message)
276 {
277     Ref<DatabaseBackendDispatcher> protect(*this);
278
279     RefPtr<InspectorObject> parameters;
280     message->getObject(ASCIILiteral("params"), parameters);
281
282     if (method == "executeSQLSyncOptionalReturnValues")
283         executeSQLSyncOptionalReturnValues(requestId, WTFMove(parameters));
284     else if (method == "executeSQLAsyncOptionalReturnValues")
285         executeSQLAsyncOptionalReturnValues(requestId, WTFMove(parameters));
286     else if (method == "executeSQLSync")
287         executeSQLSync(requestId, WTFMove(parameters));
288     else if (method == "executeSQLAsync")
289         executeSQLAsync(requestId, WTFMove(parameters));
290     else
291         m_backendDispatcher->reportProtocolError(BackendDispatcher::MethodNotFound, makeString('\'', "Database", '.', method, "' was not found"));
292 }
293
294 void DatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long requestId, RefPtr<InspectorObject>&& parameters)
295 {
296     int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), ASCIILiteral("databaseId"), nullptr);
297     String in_query = m_backendDispatcher->getString(parameters.get(), ASCIILiteral("query"), nullptr);
298     if (m_backendDispatcher->hasProtocolErrors()) {
299         m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLSyncOptionalReturnValues"));
300         return;
301     }
302
303 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
304     if (m_alternateDispatcher) {
305         m_alternateDispatcher->executeSQLSyncOptionalReturnValues(requestId, in_databaseId, in_query);
306         return;
307     }
308 #endif
309
310     ErrorString error;
311     Ref<InspectorObject> result = InspectorObject::create();
312     RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
313     Inspector::Protocol::OptOutput<String> out_notes;
314     Inspector::Protocol::OptOutput<double> out_timestamp;
315     Inspector::Protocol::OptOutput<Inspector::InspectorObject> out_values;
316     Inspector::Protocol::OptOutput<Inspector::InspectorValue> out_payload;
317     Inspector::Protocol::OptOutput<Inspector::Protocol::Database::DatabaseId> out_databaseId;
318     RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
319     Inspector::Protocol::Database::PrimaryColors out_screenColor;
320     RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
321     DatabaseBackendDispatcherHandler::PrintColor out_printColor;
322     m_agent->executeSQLSyncOptionalReturnValues(error, in_databaseId, in_query, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, &out_screenColor, out_alternateColors, &out_printColor);
323
324     if (!error.length()) {
325         if (out_columnNames)
326             result->setArray(ASCIILiteral("columnNames"), out_columnNames);
327         if (out_notes.isAssigned())
328             result->setString(ASCIILiteral("notes"), out_notes.getValue());
329         if (out_timestamp.isAssigned())
330             result->setDouble(ASCIILiteral("timestamp"), out_timestamp.getValue());
331         if (out_values.isAssigned())
332             result->setObject(ASCIILiteral("values"), out_values.getValue());
333         if (out_payload.isAssigned())
334             result->setValue(ASCIILiteral("payload"), out_payload.getValue());
335         if (out_databaseId.isAssigned())
336             result->setInteger(ASCIILiteral("databaseId"), out_databaseId.getValue());
337         if (out_sqlError)
338             result->setObject(ASCIILiteral("sqlError"), out_sqlError);
339         if (out_screenColor.isAssigned())
340             result->setString(ASCIILiteral("screenColor"), out_screenColor.getValue());
341         if (out_alternateColors)
342             result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
343         if (out_printColor.isAssigned())
344             result->setString(ASCIILiteral("printColor"), out_printColor.getValue());
345     }
346     if (!error.length())
347         m_backendDispatcher->sendResponse(requestId, WTFMove(result));
348     else
349         m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, WTFMove(error));
350 }
351
352 DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTFMove(backendDispatcher), id) { }
353
354 void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, Inspector::Protocol::OptOutput<String>* notes, Inspector::Protocol::OptOutput<double>* timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* payload, Inspector::Protocol::OptOutput<int>* databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::OptOutput<String>* screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Inspector::Protocol::OptOutput<String>* printColor)
355 {
356     Ref<InspectorObject> jsonMessage = InspectorObject::create();
357     if (columnNames)
358         jsonMessage->setArray(ASCIILiteral("columnNames"), columnNames);
359     if (notes.isAssigned())
360         jsonMessage->setString(ASCIILiteral("notes"), notes.getValue());
361     if (timestamp.isAssigned())
362         jsonMessage->setDouble(ASCIILiteral("timestamp"), timestamp.getValue());
363     if (values.isAssigned())
364         jsonMessage->setObject(ASCIILiteral("values"), values.getValue());
365     if (payload.isAssigned())
366         jsonMessage->setValue(ASCIILiteral("payload"), payload.getValue());
367     if (databaseId.isAssigned())
368         jsonMessage->setInteger(ASCIILiteral("databaseId"), databaseId.getValue());
369     if (sqlError)
370         jsonMessage->setObject(ASCIILiteral("sqlError"), sqlError);
371     if (screenColor.isAssigned())
372         jsonMessage->setString(ASCIILiteral("screenColor"), screenColor.getValue());
373     if (alternateColors)
374         jsonMessage->setArray(ASCIILiteral("alternateColors"), alternateColors);
375     if (printColor.isAssigned())
376         jsonMessage->setString(ASCIILiteral("printColor"), printColor.getValue());
377     CallbackBase::sendSuccess(WTFMove(jsonMessage));
378 }
379
380 void DatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long requestId, RefPtr<InspectorObject>&& parameters)
381 {
382     int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), ASCIILiteral("databaseId"), nullptr);
383     String in_query = m_backendDispatcher->getString(parameters.get(), ASCIILiteral("query"), nullptr);
384     if (m_backendDispatcher->hasProtocolErrors()) {
385         m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLAsyncOptionalReturnValues"));
386         return;
387     }
388
389 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
390     if (m_alternateDispatcher) {
391         m_alternateDispatcher->executeSQLAsyncOptionalReturnValues(requestId, in_databaseId, in_query);
392         return;
393     }
394 #endif
395
396     ErrorString error;
397     Ref<InspectorObject> result = InspectorObject::create();
398     Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback(m_backendDispatcher.copyRef(), requestId));
399     m_agent->executeSQLAsyncOptionalReturnValues(error, in_databaseId, in_query, callback.copyRef());
400
401     if (error.length()) {
402         callback->disable();
403         m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, error);
404         return;
405     }
406 }
407
408 void DatabaseBackendDispatcher::executeSQLSync(long requestId, RefPtr<InspectorObject>&& parameters)
409 {
410     int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), ASCIILiteral("databaseId"), nullptr);
411     String in_query = m_backendDispatcher->getString(parameters.get(), ASCIILiteral("query"), nullptr);
412     if (m_backendDispatcher->hasProtocolErrors()) {
413         m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLSync"));
414         return;
415     }
416
417 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
418     if (m_alternateDispatcher) {
419         m_alternateDispatcher->executeSQLSync(requestId, in_databaseId, in_query);
420         return;
421     }
422 #endif
423
424     ErrorString error;
425     Ref<InspectorObject> result = InspectorObject::create();
426     RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
427     String out_notes;
428     double out_timestamp;
429     Inspector::InspectorObject out_values;
430     Inspector::InspectorValue out_payload;
431     Inspector::Protocol::Database::DatabaseId out_databaseId;
432     RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
433     RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
434     Inspector::Protocol::Database::PrimaryColors out_screenColor;
435     DatabaseBackendDispatcherHandler::PrintColor out_printColor;
436     m_agent->executeSQLSync(error, in_databaseId, in_query, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, out_alternateColors, &out_screenColor, &out_printColor);
437
438     if (!error.length()) {
439         result->setArray(ASCIILiteral("columnNames"), out_columnNames);
440         result->setString(ASCIILiteral("notes"), out_notes);
441         result->setDouble(ASCIILiteral("timestamp"), out_timestamp);
442         result->setObject(ASCIILiteral("values"), out_values);
443         result->setValue(ASCIILiteral("payload"), out_payload);
444         result->setInteger(ASCIILiteral("databaseId"), out_databaseId);
445         result->setObject(ASCIILiteral("sqlError"), out_sqlError);
446         result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
447         result->setString(ASCIILiteral("screenColor"), Inspector::Protocol::getEnumConstantValue(out_screenColor));
448         result->setString(ASCIILiteral("printColor"), Inspector::Protocol::getEnumConstantValue(out_printColor));
449     }
450     if (!error.length())
451         m_backendDispatcher->sendResponse(requestId, WTFMove(result));
452     else
453         m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, WTFMove(error));
454 }
455
456 DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTFMove(backendDispatcher), id) { }
457
458 void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, const String& notes, double timestamp, Inspector::InspectorObject values, Inspector::InspectorValue payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, const String& screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, const String& printColor)
459 {
460     Ref<InspectorObject> jsonMessage = InspectorObject::create();
461     jsonMessage->setArray(ASCIILiteral("columnNames"), columnNames);
462     jsonMessage->setString(ASCIILiteral("notes"), notes);
463     jsonMessage->setDouble(ASCIILiteral("timestamp"), timestamp);
464     jsonMessage->setObject(ASCIILiteral("values"), values);
465     jsonMessage->setValue(ASCIILiteral("payload"), payload);
466     jsonMessage->setInteger(ASCIILiteral("databaseId"), databaseId);
467     jsonMessage->setObject(ASCIILiteral("sqlError"), sqlError);
468     jsonMessage->setString(ASCIILiteral("screenColor"), Inspector::Protocol::getEnumConstantValue(screenColor));
469     jsonMessage->setArray(ASCIILiteral("alternateColors"), alternateColors);
470     jsonMessage->setString(ASCIILiteral("printColor"), Inspector::Protocol::getEnumConstantValue(printColor));
471     CallbackBase::sendSuccess(WTFMove(jsonMessage));
472 }
473
474 void DatabaseBackendDispatcher::executeSQLAsync(long requestId, RefPtr<InspectorObject>&& parameters)
475 {
476     int in_databaseId = m_backendDispatcher->getInteger(parameters.get(), ASCIILiteral("databaseId"), nullptr);
477     String in_query = m_backendDispatcher->getString(parameters.get(), ASCIILiteral("query"), nullptr);
478     if (m_backendDispatcher->hasProtocolErrors()) {
479         m_backendDispatcher->reportProtocolError(BackendDispatcher::InvalidParams, String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLAsync"));
480         return;
481     }
482
483 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
484     if (m_alternateDispatcher) {
485         m_alternateDispatcher->executeSQLAsync(requestId, in_databaseId, in_query);
486         return;
487     }
488 #endif
489
490     ErrorString error;
491     Ref<InspectorObject> result = InspectorObject::create();
492     Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback(m_backendDispatcher.copyRef(), requestId));
493     m_agent->executeSQLAsync(error, in_databaseId, in_query, callback.copyRef());
494
495     if (error.length()) {
496         callback->disable();
497         m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, error);
498         return;
499     }
500 }
501
502 } // namespace Inspector
503
504 ### End File: InspectorBackendDispatchers.cpp
505
506 ### Begin File: InspectorFrontendDispatchers.h
507 /*
508  * Copyright (C) 2013 Google Inc. All rights reserved.
509  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
510  * Copyright (C) 2014 University of Washington. All rights reserved.
511  *
512  * Redistribution and use in source and binary forms, with or without
513  * modification, are permitted provided that the following conditions
514  * are met:
515  * 1. Redistributions of source code must retain the above copyright
516  *    notice, this list of conditions and the following disclaimer.
517  * 2. Redistributions in binary form must reproduce the above copyright
518  *    notice, this list of conditions and the following disclaimer in the
519  *    documentation and/or other materials provided with the distribution.
520  *
521  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
522  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
523  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
524  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
525  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
526  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
527  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
528  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
529  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
530  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
531  * THE POSSIBILITY OF SUCH DAMAGE.
532  */
533
534 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
535 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
536
537 #ifndef InspectorFrontendDispatchers_h
538 #define InspectorFrontendDispatchers_h
539
540 #include "InspectorProtocolObjects.h"
541 #include <inspector/InspectorValues.h>
542 #include <wtf/text/WTFString.h>
543
544 namespace Inspector {
545
546 class FrontendRouter;
547
548 } // namespace Inspector
549
550 #endif // !defined(InspectorFrontendDispatchers_h)
551 ### End File: InspectorFrontendDispatchers.h
552
553 ### Begin File: InspectorFrontendDispatchers.cpp
554 /*
555  * Copyright (C) 2013 Google Inc. All rights reserved.
556  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
557  * Copyright (C) 2014 University of Washington. All rights reserved.
558  *
559  * Redistribution and use in source and binary forms, with or without
560  * modification, are permitted provided that the following conditions
561  * are met:
562  * 1. Redistributions of source code must retain the above copyright
563  *    notice, this list of conditions and the following disclaimer.
564  * 2. Redistributions in binary form must reproduce the above copyright
565  *    notice, this list of conditions and the following disclaimer in the
566  *    documentation and/or other materials provided with the distribution.
567  *
568  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
569  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
570  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
571  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
572  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
573  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
574  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
575  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
576  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
577  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
578  * THE POSSIBILITY OF SUCH DAMAGE.
579  */
580
581 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
582 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
583
584 #include "config.h"
585 #include "InspectorFrontendDispatchers.h"
586
587 #include "InspectorFrontendRouter.h"
588 #include <wtf/text/CString.h>
589
590 namespace Inspector {
591
592 } // namespace Inspector
593
594 ### End File: InspectorFrontendDispatchers.cpp
595
596 ### Begin File: InspectorProtocolObjects.h
597 /*
598  * Copyright (C) 2013 Google Inc. All rights reserved.
599  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
600  * Copyright (C) 2014 University of Washington. All rights reserved.
601  *
602  * Redistribution and use in source and binary forms, with or without
603  * modification, are permitted provided that the following conditions
604  * are met:
605  * 1. Redistributions of source code must retain the above copyright
606  *    notice, this list of conditions and the following disclaimer.
607  * 2. Redistributions in binary form must reproduce the above copyright
608  *    notice, this list of conditions and the following disclaimer in the
609  *    documentation and/or other materials provided with the distribution.
610  *
611  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
612  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
613  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
614  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
615  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
616  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
617  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
618  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
619  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
620  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
621  * THE POSSIBILITY OF SUCH DAMAGE.
622  */
623
624 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
625 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
626
627 #ifndef InspectorProtocolObjects_h
628 #define InspectorProtocolObjects_h
629
630 #include <inspector/InspectorProtocolTypes.h>
631 #include <wtf/Assertions.h>
632
633 namespace Inspector {
634
635
636
637 namespace Protocol {
638
639 // Forward declarations.
640 namespace Database {
641 class Error;
642 enum class PrimaryColors;
643 } // Database
644 // End of forward declarations.
645
646
647 // Typedefs.
648 namespace Database {
649 /* Unique identifier of Database object. */
650 typedef int DatabaseId;
651 typedef Inspector::Protocol::Array<Inspector::Protocol::Database::PrimaryColors> ColorList;
652 } // Database
653 // End of typedefs.
654
655 String getEnumConstantValue(int code);
656
657 template<typename T> String getEnumConstantValue(T enumValue)
658 {
659     return getEnumConstantValue(static_cast<int>(enumValue));
660 }
661
662 namespace Database {
663 /*  */
664 enum class PrimaryColors {
665     Red = 0,
666     Green = 1,
667     Blue = 2,
668 }; // enum class PrimaryColors
669 /* Database error. */
670 class Error : public Inspector::InspectorObjectBase {
671 public:
672     enum {
673         NoFieldsSet = 0,
674         MessageSet = 1 << 0,
675         CodeSet = 1 << 1,
676         AllFieldsSet = (MessageSet | CodeSet)
677     };
678
679     template<int STATE>
680     class Builder {
681     private:
682         RefPtr<InspectorObject> m_result;
683
684         template<int STEP> Builder<STATE | STEP>& castState()
685         {
686             return *reinterpret_cast<Builder<STATE | STEP>*>(this);
687         }
688
689         Builder(Ref</*Error*/InspectorObject>&& object)
690             : m_result(WTFMove(object))
691         {
692             COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
693         }
694         friend class Error;
695     public:
696
697         Builder<STATE | MessageSet>& setMessage(const String& value)
698         {
699             COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
700             m_result->setString(ASCIILiteral("message"), value);
701             return castState<MessageSet>();
702         }
703
704         Builder<STATE | CodeSet>& setCode(int value)
705         {
706             COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
707             m_result->setInteger(ASCIILiteral("code"), value);
708             return castState<CodeSet>();
709         }
710
711         Ref<Error> release()
712         {
713             COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
714             COMPILE_ASSERT(sizeof(Error) == sizeof(InspectorObject), cannot_cast);
715
716             Ref<InspectorObject> result = m_result.releaseNonNull();
717             return WTFMove(*reinterpret_cast<Ref<Error>*>(&result));
718         }
719     };
720
721     /*
722      * Synthetic constructor:
723      * Ref<Error> result = Error::create()
724      *     .setMessage(...)
725      *     .setCode(...)
726      *     .release();
727      */
728     static Builder<NoFieldsSet> create()
729     {
730         return Builder<NoFieldsSet>(InspectorObject::create());
731     }
732 };
733
734 } // Database
735
736
737
738 } // namespace Protocol
739
740 } // namespace Inspector
741
742 #endif // !defined(InspectorProtocolObjects_h)
743 ### End File: InspectorProtocolObjects.h
744
745 ### Begin File: InspectorProtocolObjects.cpp
746 /*
747  * Copyright (C) 2013 Google Inc. All rights reserved.
748  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
749  * Copyright (C) 2014 University of Washington. All rights reserved.
750  *
751  * Redistribution and use in source and binary forms, with or without
752  * modification, are permitted provided that the following conditions
753  * are met:
754  * 1. Redistributions of source code must retain the above copyright
755  *    notice, this list of conditions and the following disclaimer.
756  * 2. Redistributions in binary form must reproduce the above copyright
757  *    notice, this list of conditions and the following disclaimer in the
758  *    documentation and/or other materials provided with the distribution.
759  *
760  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
761  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
762  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
763  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
764  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
765  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
766  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
767  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
768  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
769  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
770  * THE POSSIBILITY OF SUCH DAMAGE.
771  */
772
773 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
774 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
775
776 #include "config.h"
777 #include "InspectorProtocolObjects.h"
778
779 #include <wtf/text/CString.h>
780
781 namespace Inspector {
782
783 namespace Protocol {
784
785 static const char* const enum_constant_values[] = {
786     "red",
787     "green",
788     "blue",
789     "cyan",
790     "magenta",
791     "yellow",
792     "black",
793 };
794
795 String getEnumConstantValue(int code) {
796     return enum_constant_values[code];
797 }
798
799
800
801 } // namespace Protocol
802
803 } // namespace Inspector
804
805 ### End File: InspectorProtocolObjects.cpp
806
807 ### Begin File: RWIProtocolBackendDispatchers.h
808 /*
809  * Copyright (C) 2013 Google Inc. All rights reserved.
810  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
811  * Copyright (C) 2014 University of Washington. All rights reserved.
812  *
813  * Redistribution and use in source and binary forms, with or without
814  * modification, are permitted provided that the following conditions
815  * are met:
816  * 1. Redistributions of source code must retain the above copyright
817  *    notice, this list of conditions and the following disclaimer.
818  * 2. Redistributions in binary form must reproduce the above copyright
819  *    notice, this list of conditions and the following disclaimer in the
820  *    documentation and/or other materials provided with the distribution.
821  *
822  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
823  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
824  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
825  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
826  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
827  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
828  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
829  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
830  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
831  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
832  * THE POSSIBILITY OF SUCH DAMAGE.
833  */
834
835 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
836 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
837
838 #include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
839 #include <wtf/RetainPtr.h>
840
841 @protocol RWIProtocolDatabaseDomainHandler;
842
843 namespace Inspector {
844
845
846 class ObjCInspectorDatabaseBackendDispatcher final : public AlternateDatabaseBackendDispatcher {
847 public:
848     ObjCInspectorDatabaseBackendDispatcher(id<RWIProtocolDatabaseDomainHandler> handler) { m_delegate = handler; }
849     virtual void executeSQLSyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) override;
850     virtual void executeSQLAsyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query) override;
851     virtual void executeSQLSync(long requestId, int in_databaseId, const String& in_query) override;
852     virtual void executeSQLAsync(long requestId, int in_databaseId, const String& in_query) override;
853 private:
854     RetainPtr<id<RWIProtocolDatabaseDomainHandler>> m_delegate;
855 };
856
857 } // namespace Inspector
858
859 ### End File: RWIProtocolBackendDispatchers.h
860
861 ### Begin File: RWIProtocolConfiguration.mm
862 /*
863  * Copyright (C) 2013 Google Inc. All rights reserved.
864  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
865  * Copyright (C) 2014 University of Washington. All rights reserved.
866  *
867  * Redistribution and use in source and binary forms, with or without
868  * modification, are permitted provided that the following conditions
869  * are met:
870  * 1. Redistributions of source code must retain the above copyright
871  *    notice, this list of conditions and the following disclaimer.
872  * 2. Redistributions in binary form must reproduce the above copyright
873  *    notice, this list of conditions and the following disclaimer in the
874  *    documentation and/or other materials provided with the distribution.
875  *
876  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
877  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
878  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
879  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
880  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
881  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
882  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
883  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
884  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
885  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
886  * THE POSSIBILITY OF SUCH DAMAGE.
887  */
888
889 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
890 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
891
892 #import "config.h"
893 #import "RWIProtocolConfiguration.h"
894
895 #import "RWIProtocolInternal.h"
896 #import "RWIProtocolBackendDispatchers.h"
897 #import <JavaScriptCore/AlternateDispatchableAgent.h>
898 #import <JavaScriptCore/AugmentableInspectorController.h>
899 #import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
900 #import <JavaScriptCore/InspectorBackendDispatchers.h>
901
902 using namespace Inspector;
903
904 @implementation RWIProtocolConfiguration
905 {
906     AugmentableInspectorController* _controller;
907     id<RWIProtocolDatabaseDomainHandler> _databaseHandler;
908 }
909
910 - (instancetype)initWithController:(AugmentableInspectorController*)controller
911 {
912     self = [super init];
913     if (!self)
914         return nil;
915     ASSERT(controller);
916     _controller = controller;
917     return self;
918 }
919
920 - (void)dealloc
921 {
922     [_databaseHandler release];
923     [super dealloc];
924 }
925
926 - (void)setDatabaseHandler:(id<RWIProtocolDatabaseDomainHandler>)handler
927 {
928     if (handler == _databaseHandler)
929         return;
930
931     [_databaseHandler release];
932     _databaseHandler = [handler retain];
933
934     auto alternateDispatcher = std::make_unique<ObjCInspectorDatabaseBackendDispatcher>(handler);
935     auto alternateAgent = std::make_unique<AlternateDispatchableAgent<DatabaseBackendDispatcher, AlternateDatabaseBackendDispatcher>>(ASCIILiteral("Database"), *_controller, WTFMove(alternateDispatcher));
936     _controller->appendExtraAgent(WTFMove(alternateAgent));
937 }
938
939 - (id<RWIProtocolDatabaseDomainHandler>)databaseHandler
940 {
941     return _databaseHandler;
942 }
943
944 @end
945
946
947 ### End File: RWIProtocolConfiguration.mm
948
949 ### Begin File: RWIProtocolConfiguration.h
950 /*
951  * Copyright (C) 2013 Google Inc. All rights reserved.
952  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
953  * Copyright (C) 2014 University of Washington. All rights reserved.
954  *
955  * Redistribution and use in source and binary forms, with or without
956  * modification, are permitted provided that the following conditions
957  * are met:
958  * 1. Redistributions of source code must retain the above copyright
959  *    notice, this list of conditions and the following disclaimer.
960  * 2. Redistributions in binary form must reproduce the above copyright
961  *    notice, this list of conditions and the following disclaimer in the
962  *    documentation and/or other materials provided with the distribution.
963  *
964  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
965  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
966  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
967  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
968  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
969  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
970  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
971  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
972  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
973  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
974  * THE POSSIBILITY OF SUCH DAMAGE.
975  */
976
977 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
978 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
979
980 #import <WebInspector/RWIProtocol.h>
981
982 __attribute__((visibility ("default")))
983 @interface RWIProtocolConfiguration : NSObject
984 @property (nonatomic, retain, setter=setDatabaseHandler:) id<RWIProtocolDatabaseDomainHandler> databaseHandler;
985 @end
986
987
988 ### End File: RWIProtocolConfiguration.h
989
990 ### Begin File: RWIProtocolBackendDispatchers.mm
991 /*
992  * Copyright (C) 2013 Google Inc. All rights reserved.
993  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
994  * Copyright (C) 2014 University of Washington. All rights reserved.
995  *
996  * Redistribution and use in source and binary forms, with or without
997  * modification, are permitted provided that the following conditions
998  * are met:
999  * 1. Redistributions of source code must retain the above copyright
1000  *    notice, this list of conditions and the following disclaimer.
1001  * 2. Redistributions in binary form must reproduce the above copyright
1002  *    notice, this list of conditions and the following disclaimer in the
1003  *    documentation and/or other materials provided with the distribution.
1004  *
1005  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1006  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1007  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1008  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1009  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1010  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1011  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1012  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1013  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1014  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1015  * THE POSSIBILITY OF SUCH DAMAGE.
1016  */
1017
1018 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1019 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1020
1021 #import "config.h"
1022 #import "RWIProtocolBackendDispatchers.h"
1023
1024 #include "RWIProtocolInternal.h"
1025 #include "RWIProtocolEnumConversionHelpers.h"
1026 #include <JavaScriptCore/InspectorValues.h>
1027
1028 namespace Inspector {
1029
1030 void ObjCInspectorDatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query)
1031 {
1032     id errorCallback = ^(NSString *error) {
1033         backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error);
1034         backendDispatcher()->sendPendingErrors();
1035     };
1036
1037     id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor) {
1038         Ref<InspectorObject> resultObject = InspectorObject::create();
1039         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
1040         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
1041         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
1042         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
1043         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
1044         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
1045         if (columnNames)
1046             resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(*columnNames));
1047         if (notes)
1048             resultObject->setString(ASCIILiteral("notes"), *notes);
1049         if (timestamp)
1050             resultObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
1051         if (values)
1052             resultObject->setObject(ASCIILiteral("values"), [*values toInspectorObject]);
1053         if (payload)
1054             resultObject->setValue(ASCIILiteral("payload"), [*payload toInspectorObject]);
1055         if (databaseId)
1056             resultObject->setInteger(ASCIILiteral("databaseId"), *databaseId);
1057         if (sqlError)
1058             resultObject->setObject(ASCIILiteral("sqlError"), [*sqlError toInspectorObject]);
1059         if (screenColor)
1060             resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(*screenColor));
1061         if (alternateColors)
1062             resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(*alternateColors));
1063         if (printColor)
1064             resultObject->setString(ASCIILiteral("printColor"), toProtocolString(*printColor));
1065         backendDispatcher()->sendResponse(requestId, WTFMove(resultObject));
1066     };
1067
1068     int o_in_databaseId = in_databaseId;
1069     NSString *o_in_query = in_query;
1070
1071     [m_delegate executeSQLSyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
1072 }
1073
1074 void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long requestId, int in_databaseId, const String& in_query)
1075 {
1076     id errorCallback = ^(NSString *error) {
1077         backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error);
1078         backendDispatcher()->sendPendingErrors();
1079     };
1080
1081     id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor) {
1082         Ref<InspectorObject> resultObject = InspectorObject::create();
1083         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
1084         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
1085         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
1086         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
1087         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
1088         THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
1089         if (columnNames)
1090             resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(*columnNames));
1091         if (notes)
1092             resultObject->setString(ASCIILiteral("notes"), *notes);
1093         if (timestamp)
1094             resultObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
1095         if (values)
1096             resultObject->setObject(ASCIILiteral("values"), [*values toInspectorObject]);
1097         if (payload)
1098             resultObject->setValue(ASCIILiteral("payload"), [*payload toInspectorObject]);
1099         if (databaseId)
1100             resultObject->setInteger(ASCIILiteral("databaseId"), *databaseId);
1101         if (sqlError)
1102             resultObject->setObject(ASCIILiteral("sqlError"), [*sqlError toInspectorObject]);
1103         if (screenColor)
1104             resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(*screenColor));
1105         if (alternateColors)
1106             resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(*alternateColors));
1107         if (printColor)
1108             resultObject->setString(ASCIILiteral("printColor"), toProtocolString(*printColor));
1109         backendDispatcher()->sendResponse(requestId, WTFMove(resultObject));
1110     };
1111
1112     int o_in_databaseId = in_databaseId;
1113     NSString *o_in_query = in_query;
1114
1115     [m_delegate executeSQLAsyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
1116 }
1117
1118 void ObjCInspectorDatabaseBackendDispatcher::executeSQLSync(long requestId, int in_databaseId, const String& in_query)
1119 {
1120     id errorCallback = ^(NSString *error) {
1121         backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error);
1122         backendDispatcher()->sendPendingErrors();
1123     };
1124
1125     id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabasePrimaryColors screenColor, RWIProtocolDatabaseExecuteSQLSyncPrintColor printColor) {
1126         Ref<InspectorObject> resultObject = InspectorObject::create();
1127         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
1128         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
1129         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
1130         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
1131         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
1132         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
1133         resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
1134         resultObject->setString(ASCIILiteral("notes"), notes);
1135         resultObject->setDouble(ASCIILiteral("timestamp"), timestamp);
1136         resultObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
1137         resultObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
1138         resultObject->setInteger(ASCIILiteral("databaseId"), databaseId);
1139         resultObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
1140         resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
1141         resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(screenColor));
1142         resultObject->setString(ASCIILiteral("printColor"), toProtocolString(printColor));
1143         backendDispatcher()->sendResponse(requestId, WTFMove(resultObject));
1144     };
1145
1146     int o_in_databaseId = in_databaseId;
1147     NSString *o_in_query = in_query;
1148
1149     [m_delegate executeSQLSyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
1150 }
1151
1152 void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsync(long requestId, int in_databaseId, const String& in_query)
1153 {
1154     id errorCallback = ^(NSString *error) {
1155         backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error);
1156         backendDispatcher()->sendPendingErrors();
1157     };
1158
1159     id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteSQLAsyncPrintColor printColor) {
1160         Ref<InspectorObject> resultObject = InspectorObject::create();
1161         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
1162         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
1163         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
1164         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
1165         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
1166         THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
1167         resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
1168         resultObject->setString(ASCIILiteral("notes"), notes);
1169         resultObject->setDouble(ASCIILiteral("timestamp"), timestamp);
1170         resultObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
1171         resultObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
1172         resultObject->setInteger(ASCIILiteral("databaseId"), databaseId);
1173         resultObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
1174         resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(screenColor));
1175         resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
1176         resultObject->setString(ASCIILiteral("printColor"), toProtocolString(printColor));
1177         backendDispatcher()->sendResponse(requestId, WTFMove(resultObject));
1178     };
1179
1180     int o_in_databaseId = in_databaseId;
1181     NSString *o_in_query = in_query;
1182
1183     [m_delegate executeSQLAsyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
1184 }
1185
1186
1187 } // namespace Inspector
1188
1189 ### End File: RWIProtocolBackendDispatchers.mm
1190
1191 ### Begin File: RWIProtocolEnumConversionHelpers.h
1192 /*
1193  * Copyright (C) 2013 Google Inc. All rights reserved.
1194  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1195  * Copyright (C) 2014 University of Washington. All rights reserved.
1196  *
1197  * Redistribution and use in source and binary forms, with or without
1198  * modification, are permitted provided that the following conditions
1199  * are met:
1200  * 1. Redistributions of source code must retain the above copyright
1201  *    notice, this list of conditions and the following disclaimer.
1202  * 2. Redistributions in binary form must reproduce the above copyright
1203  *    notice, this list of conditions and the following disclaimer in the
1204  *    documentation and/or other materials provided with the distribution.
1205  *
1206  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1207  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1208  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1209  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1210  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1211  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1212  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1213  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1214  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1215  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1216  * THE POSSIBILITY OF SUCH DAMAGE.
1217  */
1218
1219 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1220 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1221
1222 #import "RWIProtocolArrayConversionHelpers.h"
1223
1224 namespace Inspector {
1225
1226 template<typename ObjCEnumType>
1227 ObjCEnumType fromProtocolString(const String& value);
1228
1229
1230 inline String toProtocolString(RWIProtocolDatabasePrimaryColors value)
1231 {
1232     switch(value) {
1233     case RWIProtocolDatabasePrimaryColorsRed:
1234         return ASCIILiteral("red");
1235     case RWIProtocolDatabasePrimaryColorsGreen:
1236         return ASCIILiteral("green");
1237     case RWIProtocolDatabasePrimaryColorsBlue:
1238         return ASCIILiteral("blue");
1239     }
1240 }
1241
1242 template<>
1243 inline RWIProtocolDatabasePrimaryColors fromProtocolString(const String& value)
1244 {
1245     if (value == "red")
1246         return RWIProtocolDatabasePrimaryColorsRed;
1247     if (value == "green")
1248         return RWIProtocolDatabasePrimaryColorsGreen;
1249     if (value == "blue")
1250         return RWIProtocolDatabasePrimaryColorsBlue;
1251     ASSERT_NOT_REACHED();
1252     return RWIProtocolDatabasePrimaryColorsRed;
1253 }
1254
1255 inline String toProtocolString(RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor value)
1256 {
1257     switch(value) {
1258     case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan:
1259         return ASCIILiteral("cyan");
1260     case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta:
1261         return ASCIILiteral("magenta");
1262     case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow:
1263         return ASCIILiteral("yellow");
1264     case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack:
1265         return ASCIILiteral("black");
1266     }
1267 }
1268
1269 template<>
1270 inline RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor fromProtocolString(const String& value)
1271 {
1272     if (value == "cyan")
1273         return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan;
1274     if (value == "magenta")
1275         return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta;
1276     if (value == "yellow")
1277         return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow;
1278     if (value == "black")
1279         return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack;
1280     ASSERT_NOT_REACHED();
1281     return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan;
1282 }
1283
1284 inline String toProtocolString(RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor value)
1285 {
1286     switch(value) {
1287     case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan:
1288         return ASCIILiteral("cyan");
1289     case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta:
1290         return ASCIILiteral("magenta");
1291     case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow:
1292         return ASCIILiteral("yellow");
1293     case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack:
1294         return ASCIILiteral("black");
1295     }
1296 }
1297
1298 template<>
1299 inline RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor fromProtocolString(const String& value)
1300 {
1301     if (value == "cyan")
1302         return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan;
1303     if (value == "magenta")
1304         return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta;
1305     if (value == "yellow")
1306         return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow;
1307     if (value == "black")
1308         return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack;
1309     ASSERT_NOT_REACHED();
1310     return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan;
1311 }
1312
1313 inline String toProtocolString(RWIProtocolDatabaseExecuteSQLSyncPrintColor value)
1314 {
1315     switch(value) {
1316     case RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan:
1317         return ASCIILiteral("cyan");
1318     case RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta:
1319         return ASCIILiteral("magenta");
1320     case RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow:
1321         return ASCIILiteral("yellow");
1322     case RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack:
1323         return ASCIILiteral("black");
1324     }
1325 }
1326
1327 template<>
1328 inline RWIProtocolDatabaseExecuteSQLSyncPrintColor fromProtocolString(const String& value)
1329 {
1330     if (value == "cyan")
1331         return RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan;
1332     if (value == "magenta")
1333         return RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta;
1334     if (value == "yellow")
1335         return RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow;
1336     if (value == "black")
1337         return RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack;
1338     ASSERT_NOT_REACHED();
1339     return RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan;
1340 }
1341
1342 inline String toProtocolString(RWIProtocolDatabaseExecuteSQLAsyncPrintColor value)
1343 {
1344     switch(value) {
1345     case RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan:
1346         return ASCIILiteral("cyan");
1347     case RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta:
1348         return ASCIILiteral("magenta");
1349     case RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow:
1350         return ASCIILiteral("yellow");
1351     case RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack:
1352         return ASCIILiteral("black");
1353     }
1354 }
1355
1356 template<>
1357 inline RWIProtocolDatabaseExecuteSQLAsyncPrintColor fromProtocolString(const String& value)
1358 {
1359     if (value == "cyan")
1360         return RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan;
1361     if (value == "magenta")
1362         return RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta;
1363     if (value == "yellow")
1364         return RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow;
1365     if (value == "black")
1366         return RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack;
1367     ASSERT_NOT_REACHED();
1368     return RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan;
1369 }
1370
1371 } // namespace Inspector
1372
1373 ### End File: RWIProtocolEnumConversionHelpers.h
1374
1375 ### Begin File: RWIProtocolEventDispatchers.mm
1376 /*
1377  * Copyright (C) 2013 Google Inc. All rights reserved.
1378  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1379  * Copyright (C) 2014 University of Washington. All rights reserved.
1380  *
1381  * Redistribution and use in source and binary forms, with or without
1382  * modification, are permitted provided that the following conditions
1383  * are met:
1384  * 1. Redistributions of source code must retain the above copyright
1385  *    notice, this list of conditions and the following disclaimer.
1386  * 2. Redistributions in binary form must reproduce the above copyright
1387  *    notice, this list of conditions and the following disclaimer in the
1388  *    documentation and/or other materials provided with the distribution.
1389  *
1390  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1391  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1392  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1393  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1394  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1395  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1396  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1397  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1398  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1399  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1400  * THE POSSIBILITY OF SUCH DAMAGE.
1401  */
1402
1403 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1404 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1405
1406 #import "config.h"
1407 #import "RWIProtocolInternal.h"
1408
1409 #import "RWIProtocolEnumConversionHelpers.h"
1410 #import <JavaScriptCore/InspectorValues.h>
1411
1412 using namespace Inspector;
1413
1414
1415
1416
1417 ### End File: RWIProtocolEventDispatchers.mm
1418
1419 ### Begin File: RWIProtocol.h
1420 /*
1421  * Copyright (C) 2013 Google Inc. All rights reserved.
1422  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1423  * Copyright (C) 2014 University of Washington. All rights reserved.
1424  *
1425  * Redistribution and use in source and binary forms, with or without
1426  * modification, are permitted provided that the following conditions
1427  * are met:
1428  * 1. Redistributions of source code must retain the above copyright
1429  *    notice, this list of conditions and the following disclaimer.
1430  * 2. Redistributions in binary form must reproduce the above copyright
1431  *    notice, this list of conditions and the following disclaimer in the
1432  *    documentation and/or other materials provided with the distribution.
1433  *
1434  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1435  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1436  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1437  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1438  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1439  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1440  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1441  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1442  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1443  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1444  * THE POSSIBILITY OF SUCH DAMAGE.
1445  */
1446
1447 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1448 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1449
1450 #import <Foundation/Foundation.h>
1451
1452 #import <WebInspector/RWIProtocolJSONObject.h>
1453
1454
1455 @class RWIProtocolDatabaseError;
1456
1457
1458 typedef NS_ENUM(NSInteger, RWIProtocolDatabasePrimaryColors) {
1459     RWIProtocolDatabasePrimaryColorsRed,
1460     RWIProtocolDatabasePrimaryColorsGreen,
1461     RWIProtocolDatabasePrimaryColorsBlue,
1462 };
1463
1464 typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor) {
1465     RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan,
1466     RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta,
1467     RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow,
1468     RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack,
1469 };
1470
1471 typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor) {
1472     RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan,
1473     RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta,
1474     RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow,
1475     RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack,
1476 };
1477
1478 typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLSyncPrintColor) {
1479     RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan,
1480     RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta,
1481     RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow,
1482     RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack,
1483 };
1484
1485 typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLAsyncPrintColor) {
1486     RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan,
1487     RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta,
1488     RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow,
1489     RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack,
1490 };
1491
1492
1493 __attribute__((visibility ("default")))
1494 @interface RWIProtocolDatabaseError : RWIProtocolJSONObject
1495 - (instancetype)initWithMessage:(NSString *)message code:(int)code;
1496 /* required */ @property (nonatomic, copy) NSString *message;
1497 /* required */ @property (nonatomic, assign) int code;
1498 @end
1499
1500 @protocol RWIProtocolDatabaseDomainHandler <NSObject>
1501 @required
1502 - (void)executeSQLSyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
1503 - (void)executeSQLAsyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
1504 - (void)executeSQLSyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabasePrimaryColors screenColor, RWIProtocolDatabaseExecuteSQLSyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
1505 - (void)executeSQLAsyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteSQLAsyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
1506 @end
1507
1508
1509
1510
1511 ### End File: RWIProtocol.h
1512
1513 ### Begin File: RWIProtocolTypes.mm
1514 /*
1515  * Copyright (C) 2013 Google Inc. All rights reserved.
1516  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1517  * Copyright (C) 2014 University of Washington. All rights reserved.
1518  *
1519  * Redistribution and use in source and binary forms, with or without
1520  * modification, are permitted provided that the following conditions
1521  * are met:
1522  * 1. Redistributions of source code must retain the above copyright
1523  *    notice, this list of conditions and the following disclaimer.
1524  * 2. Redistributions in binary form must reproduce the above copyright
1525  *    notice, this list of conditions and the following disclaimer in the
1526  *    documentation and/or other materials provided with the distribution.
1527  *
1528  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1529  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1530  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1531  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1532  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1533  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1534  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1535  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1536  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1537  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1538  * THE POSSIBILITY OF SUCH DAMAGE.
1539  */
1540
1541 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1542 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1543
1544 #import "config.h"
1545 #import "RWIProtocolInternal.h"
1546
1547 #import "RWIProtocolEnumConversionHelpers.h"
1548 #import <JavaScriptCore/InspectorValues.h>
1549 #import <wtf/Assertions.h>
1550
1551 using namespace Inspector;
1552
1553
1554 @implementation RWIProtocolDatabaseError
1555
1556 - (instancetype)initWithMessage:(NSString *)message code:(int)code;
1557 {
1558     self = [super init];
1559     if (!self)
1560         return nil;
1561
1562     THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
1563
1564     self.message = message;
1565     self.code = code;
1566
1567     return self;
1568 }
1569
1570 - (void)setMessage:(NSString *)message
1571 {
1572     [super setString:message forKey:@"message"];
1573 }
1574
1575 - (NSString *)message
1576 {
1577     return [super stringForKey:@"message"];
1578 }
1579
1580 - (void)setCode:(int)code
1581 {
1582     [super setInteger:code forKey:@"code"];
1583 }
1584
1585 - (int)code
1586 {
1587     return [super integerForKey:@"code"];
1588 }
1589
1590 @end
1591
1592
1593 ### End File: RWIProtocolTypes.mm
1594
1595 ### Begin File: RWIProtocolInternal.h
1596 /*
1597  * Copyright (C) 2013 Google Inc. All rights reserved.
1598  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1599  * Copyright (C) 2014 University of Washington. All rights reserved.
1600  *
1601  * Redistribution and use in source and binary forms, with or without
1602  * modification, are permitted provided that the following conditions
1603  * are met:
1604  * 1. Redistributions of source code must retain the above copyright
1605  *    notice, this list of conditions and the following disclaimer.
1606  * 2. Redistributions in binary form must reproduce the above copyright
1607  *    notice, this list of conditions and the following disclaimer in the
1608  *    documentation and/or other materials provided with the distribution.
1609  *
1610  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1611  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1612  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1613  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1614  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1615  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1616  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1617  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1618  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1619  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1620  * THE POSSIBILITY OF SUCH DAMAGE.
1621  */
1622
1623 // DO NOT EDIT THIS FILE. It is automatically generated from commands-with-async-attribute.json
1624 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1625
1626 #import "RWIProtocol.h"
1627 #import "RWIProtocolJSONObjectInternal.h"
1628 #import <JavaScriptCore/AugmentableInspectorController.h>
1629 #import <JavaScriptCore/InspectorValues.h>
1630
1631
1632
1633
1634 ### End File: RWIProtocolInternal.h