Replace WTF::move with WTFMove
[WebKit-https.git] / Source / JavaScriptCore / inspector / scripts / tests / expected / enum-values.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 enum-values.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 AlternateCommandDomainBackendDispatcher : public AlternateBackendDispatcher {
53 public:
54     virtual ~AlternateCommandDomainBackendDispatcher() { }
55     virtual void commandWithEnumReturnValue(long callId) = 0;
56 };
57
58 } // namespace Inspector
59
60 #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
61
62 #endif // !defined(InspectorAlternateBackendDispatchers_h)
63 ### End File: InspectorAlternateBackendDispatchers.h
64
65 ### Begin File: InspectorBackendCommands.js
66 /*
67  * Copyright (C) 2013 Google Inc. All rights reserved.
68  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
69  * Copyright (C) 2014 University of Washington. All rights reserved.
70  *
71  * Redistribution and use in source and binary forms, with or without
72  * modification, are permitted provided that the following conditions
73  * are met:
74  * 1. Redistributions of source code must retain the above copyright
75  *    notice, this list of conditions and the following disclaimer.
76  * 2. Redistributions in binary form must reproduce the above copyright
77  *    notice, this list of conditions and the following disclaimer in the
78  *    documentation and/or other materials provided with the distribution.
79  *
80  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
81  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
82  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
83  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
84  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
85  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
86  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
87  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
88  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
89  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
90  * THE POSSIBILITY OF SUCH DAMAGE.
91  */
92
93 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
94 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
95
96 // TypeDomain.
97 InspectorBackend.registerEnum("TypeDomain.TypeDomainEnum", {Shared: "shared", Red: "red", Green: "green", Blue: "blue"});
98
99 // CommandDomain.
100 InspectorBackend.registerCommand("CommandDomain.commandWithEnumReturnValue", [], ["returnValue"]);
101 InspectorBackend.activateDomain("CommandDomain");
102
103 // EventDomain.
104 InspectorBackend.registerEventDomainDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "EventDomain");
105 InspectorBackend.registerEnum("EventDomain.EventWithEnumParameterParameter", {Shared: "shared", Black: "black", White: "white"});
106 InspectorBackend.registerEvent("EventDomain.eventWithEnumParameter", ["parameter"]);
107 InspectorBackend.activateDomain("EventDomain");
108 ### End File: InspectorBackendCommands.js
109
110 ### Begin File: InspectorBackendDispatchers.h
111 /*
112  * Copyright (C) 2013 Google Inc. All rights reserved.
113  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
114  * Copyright (C) 2014 University of Washington. All rights reserved.
115  *
116  * Redistribution and use in source and binary forms, with or without
117  * modification, are permitted provided that the following conditions
118  * are met:
119  * 1. Redistributions of source code must retain the above copyright
120  *    notice, this list of conditions and the following disclaimer.
121  * 2. Redistributions in binary form must reproduce the above copyright
122  *    notice, this list of conditions and the following disclaimer in the
123  *    documentation and/or other materials provided with the distribution.
124  *
125  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
126  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
127  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
128  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
129  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
130  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
131  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
132  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
133  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
134  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
135  * THE POSSIBILITY OF SUCH DAMAGE.
136  */
137
138 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
139 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
140
141 #ifndef InspectorBackendDispatchers_h
142 #define InspectorBackendDispatchers_h
143
144 #include "InspectorProtocolObjects.h"
145 #include <inspector/InspectorBackendDispatcher.h>
146 #include <wtf/text/WTFString.h>
147
148 namespace Inspector {
149
150 typedef String ErrorString;
151
152 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
153 class AlternateCommandDomainBackendDispatcher;
154 #endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
155
156 class CommandDomainBackendDispatcherHandler {
157 public:
158     // Named after parameter 'returnValue' while generating command/event commandWithEnumReturnValue.
159     enum class ReturnValue {
160         Shared = 0,
161         Cyan = 6,
162         Magenta = 7,
163         Yellow = 8,
164     }; // enum class ReturnValue
165     virtual void commandWithEnumReturnValue(ErrorString&, CommandDomainBackendDispatcherHandler::ReturnValue* out_returnValue) = 0;
166 protected:
167     virtual ~CommandDomainBackendDispatcherHandler();
168 };
169
170 class CommandDomainBackendDispatcher final : public SupplementalBackendDispatcher {
171 public:
172     static Ref<CommandDomainBackendDispatcher> create(BackendDispatcher&, CommandDomainBackendDispatcherHandler*);
173     virtual void dispatch(long requestId, const String& method, Ref<InspectorObject>&& message) override;
174 private:
175     void commandWithEnumReturnValue(long requestId, RefPtr<InspectorObject>&& parameters);
176 private:
177     CommandDomainBackendDispatcher(BackendDispatcher&, CommandDomainBackendDispatcherHandler*);
178     CommandDomainBackendDispatcherHandler* m_agent;
179 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
180 public:
181     void setAlternateDispatcher(AlternateCommandDomainBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
182 private:
183     AlternateCommandDomainBackendDispatcher* m_alternateDispatcher;
184 #endif
185 };
186
187 } // namespace Inspector
188
189 #endif // !defined(InspectorBackendDispatchers_h)
190 ### End File: InspectorBackendDispatchers.h
191
192 ### Begin File: InspectorBackendDispatchers.cpp
193 /*
194  * Copyright (C) 2013 Google Inc. All rights reserved.
195  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
196  * Copyright (C) 2014 University of Washington. All rights reserved.
197  *
198  * Redistribution and use in source and binary forms, with or without
199  * modification, are permitted provided that the following conditions
200  * are met:
201  * 1. Redistributions of source code must retain the above copyright
202  *    notice, this list of conditions and the following disclaimer.
203  * 2. Redistributions in binary form must reproduce the above copyright
204  *    notice, this list of conditions and the following disclaimer in the
205  *    documentation and/or other materials provided with the distribution.
206  *
207  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
208  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
209  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
210  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
211  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
212  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
213  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
214  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
215  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
216  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
217  * THE POSSIBILITY OF SUCH DAMAGE.
218  */
219
220 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
221 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
222
223 #include "config.h"
224 #include "InspectorBackendDispatchers.h"
225
226 #include <inspector/InspectorFrontendRouter.h>
227 #include <inspector/InspectorValues.h>
228 #include <wtf/NeverDestroyed.h>
229 #include <wtf/text/CString.h>
230
231 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
232 #include "InspectorAlternateBackendDispatchers.h"
233 #endif
234
235 namespace Inspector {
236
237 CommandDomainBackendDispatcherHandler::~CommandDomainBackendDispatcherHandler() { }
238
239 Ref<CommandDomainBackendDispatcher> CommandDomainBackendDispatcher::create(BackendDispatcher& backendDispatcher, CommandDomainBackendDispatcherHandler* agent)
240 {
241     return adoptRef(*new CommandDomainBackendDispatcher(backendDispatcher, agent));
242 }
243
244 CommandDomainBackendDispatcher::CommandDomainBackendDispatcher(BackendDispatcher& backendDispatcher, CommandDomainBackendDispatcherHandler* agent)
245     : SupplementalBackendDispatcher(backendDispatcher)
246     , m_agent(agent)
247 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
248     , m_alternateDispatcher(nullptr)
249 #endif
250 {
251     m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("CommandDomain"), this);
252 }
253
254 void CommandDomainBackendDispatcher::dispatch(long requestId, const String& method, Ref<InspectorObject>&& message)
255 {
256     Ref<CommandDomainBackendDispatcher> protect(*this);
257
258     RefPtr<InspectorObject> parameters;
259     message->getObject(ASCIILiteral("params"), parameters);
260
261     if (method == "commandWithEnumReturnValue")
262         commandWithEnumReturnValue(requestId, WTFMove(parameters));
263     else
264         m_backendDispatcher->reportProtocolError(BackendDispatcher::MethodNotFound, makeString('\'', "CommandDomain", '.', method, "' was not found"));
265 }
266
267 void CommandDomainBackendDispatcher::commandWithEnumReturnValue(long requestId, RefPtr<InspectorObject>&&)
268 {
269 #if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
270     if (m_alternateDispatcher) {
271         m_alternateDispatcher->commandWithEnumReturnValue(requestId);
272         return;
273     }
274 #endif
275
276     ErrorString error;
277     Ref<InspectorObject> result = InspectorObject::create();
278     CommandDomainBackendDispatcherHandler::ReturnValue out_returnValue;
279     m_agent->commandWithEnumReturnValue(error, &out_returnValue);
280
281     if (!error.length())
282         result->setString(ASCIILiteral("returnValue"), Inspector::Protocol::getEnumConstantValue(out_returnValue));
283
284     if (!error.length())
285         m_backendDispatcher->sendResponse(requestId, WTFMove(result));
286     else
287         m_backendDispatcher->reportProtocolError(BackendDispatcher::ServerError, WTFMove(error));
288 }
289
290 } // namespace Inspector
291
292 ### End File: InspectorBackendDispatchers.cpp
293
294 ### Begin File: InspectorFrontendDispatchers.h
295 /*
296  * Copyright (C) 2013 Google Inc. All rights reserved.
297  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
298  * Copyright (C) 2014 University of Washington. All rights reserved.
299  *
300  * Redistribution and use in source and binary forms, with or without
301  * modification, are permitted provided that the following conditions
302  * are met:
303  * 1. Redistributions of source code must retain the above copyright
304  *    notice, this list of conditions and the following disclaimer.
305  * 2. Redistributions in binary form must reproduce the above copyright
306  *    notice, this list of conditions and the following disclaimer in the
307  *    documentation and/or other materials provided with the distribution.
308  *
309  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
310  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
311  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
312  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
313  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
314  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
315  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
316  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
317  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
318  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
319  * THE POSSIBILITY OF SUCH DAMAGE.
320  */
321
322 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
323 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
324
325 #ifndef InspectorFrontendDispatchers_h
326 #define InspectorFrontendDispatchers_h
327
328 #include "InspectorProtocolObjects.h"
329 #include <inspector/InspectorValues.h>
330 #include <wtf/text/WTFString.h>
331
332 namespace Inspector {
333
334 class FrontendRouter;
335
336 class EventDomainFrontendDispatcher {
337 public:
338     EventDomainFrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { }
339         // Named after parameter 'parameter' while generating command/event eventWithEnumParameter.
340         enum class Parameter {
341             Shared = 0,
342             Black = 4,
343             White = 5,
344         }; // enum class Parameter
345     void eventWithEnumParameter(Parameter parameter);
346 private:
347     FrontendRouter& m_frontendRouter;
348 };
349
350 } // namespace Inspector
351
352 #endif // !defined(InspectorFrontendDispatchers_h)
353 ### End File: InspectorFrontendDispatchers.h
354
355 ### Begin File: InspectorFrontendDispatchers.cpp
356 /*
357  * Copyright (C) 2013 Google Inc. All rights reserved.
358  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
359  * Copyright (C) 2014 University of Washington. All rights reserved.
360  *
361  * Redistribution and use in source and binary forms, with or without
362  * modification, are permitted provided that the following conditions
363  * are met:
364  * 1. Redistributions of source code must retain the above copyright
365  *    notice, this list of conditions and the following disclaimer.
366  * 2. Redistributions in binary form must reproduce the above copyright
367  *    notice, this list of conditions and the following disclaimer in the
368  *    documentation and/or other materials provided with the distribution.
369  *
370  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
371  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
372  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
373  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
374  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
375  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
376  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
377  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
378  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
379  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
380  * THE POSSIBILITY OF SUCH DAMAGE.
381  */
382
383 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
384 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
385
386 #include "config.h"
387 #include "InspectorFrontendDispatchers.h"
388
389 #include "InspectorFrontendRouter.h"
390 #include <wtf/text/CString.h>
391
392 namespace Inspector {
393
394 void EventDomainFrontendDispatcher::eventWithEnumParameter(Parameter parameter)
395 {
396     Ref<InspectorObject> jsonMessage = InspectorObject::create();
397     jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("EventDomain.eventWithEnumParameter"));
398     Ref<InspectorObject> paramsObject = InspectorObject::create();
399     paramsObject->setString(ASCIILiteral("parameter"), Inspector::Protocol::getEnumConstantValue(parameter));
400     jsonMessage->setObject(ASCIILiteral("params"), WTFMove(paramsObject));
401
402     m_frontendRouter.sendEvent(jsonMessage->toJSONString());
403 }
404
405 } // namespace Inspector
406
407 ### End File: InspectorFrontendDispatchers.cpp
408
409 ### Begin File: InspectorProtocolObjects.h
410 /*
411  * Copyright (C) 2013 Google Inc. All rights reserved.
412  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
413  * Copyright (C) 2014 University of Washington. All rights reserved.
414  *
415  * Redistribution and use in source and binary forms, with or without
416  * modification, are permitted provided that the following conditions
417  * are met:
418  * 1. Redistributions of source code must retain the above copyright
419  *    notice, this list of conditions and the following disclaimer.
420  * 2. Redistributions in binary form must reproduce the above copyright
421  *    notice, this list of conditions and the following disclaimer in the
422  *    documentation and/or other materials provided with the distribution.
423  *
424  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
425  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
426  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
427  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
428  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
429  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
430  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
431  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
432  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
433  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
434  * THE POSSIBILITY OF SUCH DAMAGE.
435  */
436
437 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
438 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
439
440 #ifndef InspectorProtocolObjects_h
441 #define InspectorProtocolObjects_h
442
443 #include <inspector/InspectorProtocolTypes.h>
444 #include <wtf/Assertions.h>
445
446 namespace Inspector {
447
448
449
450 namespace Protocol {
451
452 // Forward declarations.
453 namespace TypeDomain {
454 enum class TypeDomainEnum;
455 } // TypeDomain
456 // End of forward declarations.
457
458
459
460
461 String getEnumConstantValue(int code);
462
463 template<typename T> String getEnumConstantValue(T enumValue)
464 {
465     return getEnumConstantValue(static_cast<int>(enumValue));
466 }
467
468 namespace TypeDomain {
469 /*  */
470 enum class TypeDomainEnum {
471     Shared = 0,
472     Red = 1,
473     Green = 2,
474     Blue = 3,
475 }; // enum class TypeDomainEnum
476 } // TypeDomain
477
478
479
480 } // namespace Protocol
481
482 } // namespace Inspector
483
484 #endif // !defined(InspectorProtocolObjects_h)
485 ### End File: InspectorProtocolObjects.h
486
487 ### Begin File: InspectorProtocolObjects.cpp
488 /*
489  * Copyright (C) 2013 Google Inc. All rights reserved.
490  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
491  * Copyright (C) 2014 University of Washington. All rights reserved.
492  *
493  * Redistribution and use in source and binary forms, with or without
494  * modification, are permitted provided that the following conditions
495  * are met:
496  * 1. Redistributions of source code must retain the above copyright
497  *    notice, this list of conditions and the following disclaimer.
498  * 2. Redistributions in binary form must reproduce the above copyright
499  *    notice, this list of conditions and the following disclaimer in the
500  *    documentation and/or other materials provided with the distribution.
501  *
502  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
503  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
504  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
505  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
506  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
507  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
508  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
509  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
510  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
511  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
512  * THE POSSIBILITY OF SUCH DAMAGE.
513  */
514
515 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
516 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
517
518 #include "config.h"
519 #include "InspectorProtocolObjects.h"
520
521 #include <wtf/text/CString.h>
522
523 namespace Inspector {
524
525 namespace Protocol {
526
527 static const char* const enum_constant_values[] = {
528     "shared",
529     "red",
530     "green",
531     "blue",
532     "black",
533     "white",
534     "cyan",
535     "magenta",
536     "yellow",
537 };
538
539 String getEnumConstantValue(int code) {
540     return enum_constant_values[code];
541 }
542
543
544
545 } // namespace Protocol
546
547 } // namespace Inspector
548
549 ### End File: InspectorProtocolObjects.cpp
550
551 ### Begin File: RWIProtocolBackendDispatchers.h
552 /*
553  * Copyright (C) 2013 Google Inc. All rights reserved.
554  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
555  * Copyright (C) 2014 University of Washington. All rights reserved.
556  *
557  * Redistribution and use in source and binary forms, with or without
558  * modification, are permitted provided that the following conditions
559  * are met:
560  * 1. Redistributions of source code must retain the above copyright
561  *    notice, this list of conditions and the following disclaimer.
562  * 2. Redistributions in binary form must reproduce the above copyright
563  *    notice, this list of conditions and the following disclaimer in the
564  *    documentation and/or other materials provided with the distribution.
565  *
566  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
567  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
568  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
569  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
570  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
571  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
572  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
573  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
574  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
575  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
576  * THE POSSIBILITY OF SUCH DAMAGE.
577  */
578
579 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
580 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
581
582 #include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
583 #include <wtf/RetainPtr.h>
584
585 @protocol RWIProtocolCommandDomainDomainHandler;
586
587 namespace Inspector {
588
589
590
591
592 class ObjCInspectorCommandDomainBackendDispatcher final : public AlternateCommandDomainBackendDispatcher {
593 public:
594     ObjCInspectorCommandDomainBackendDispatcher(id<RWIProtocolCommandDomainDomainHandler> handler) { m_delegate = handler; }
595     virtual void commandWithEnumReturnValue(long requestId) override;
596 private:
597     RetainPtr<id<RWIProtocolCommandDomainDomainHandler>> m_delegate;
598 };
599
600
601
602 } // namespace Inspector
603
604 ### End File: RWIProtocolBackendDispatchers.h
605
606 ### Begin File: RWIProtocolConfiguration.mm
607 /*
608  * Copyright (C) 2013 Google Inc. All rights reserved.
609  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
610  * Copyright (C) 2014 University of Washington. All rights reserved.
611  *
612  * Redistribution and use in source and binary forms, with or without
613  * modification, are permitted provided that the following conditions
614  * are met:
615  * 1. Redistributions of source code must retain the above copyright
616  *    notice, this list of conditions and the following disclaimer.
617  * 2. Redistributions in binary form must reproduce the above copyright
618  *    notice, this list of conditions and the following disclaimer in the
619  *    documentation and/or other materials provided with the distribution.
620  *
621  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
622  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
623  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
624  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
625  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
626  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
627  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
628  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
629  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
630  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
631  * THE POSSIBILITY OF SUCH DAMAGE.
632  */
633
634 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
635 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
636
637 #import "config.h"
638 #import "RWIProtocolConfiguration.h"
639
640 #import "RWIProtocolInternal.h"
641 #import "RWIProtocolBackendDispatchers.h"
642 #import <JavaScriptCore/AlternateDispatchableAgent.h>
643 #import <JavaScriptCore/AugmentableInspectorController.h>
644 #import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
645 #import <JavaScriptCore/InspectorBackendDispatchers.h>
646
647 using namespace Inspector;
648
649 @implementation RWIProtocolConfiguration
650 {
651     AugmentableInspectorController* _controller;
652     id<RWIProtocolCommandDomainDomainHandler> _commandDomainHandler;
653     RWIProtocolEventDomainDomainEventDispatcher *_eventDomainEventDispatcher;
654 }
655
656 - (instancetype)initWithController:(AugmentableInspectorController*)controller
657 {
658     self = [super init];
659     if (!self)
660         return nil;
661     ASSERT(controller);
662     _controller = controller;
663     return self;
664 }
665
666 - (void)dealloc
667 {
668     [_commandDomainHandler release];
669     [_eventDomainEventDispatcher release];
670     [super dealloc];
671 }
672
673 - (void)setCommandDomainHandler:(id<RWIProtocolCommandDomainDomainHandler>)handler
674 {
675     if (handler == _commandDomainHandler)
676         return;
677
678     [_commandDomainHandler release];
679     _commandDomainHandler = [handler retain];
680
681     auto alternateDispatcher = std::make_unique<ObjCInspectorCommandDomainBackendDispatcher>(handler);
682     auto alternateAgent = std::make_unique<AlternateDispatchableAgent<CommandDomainBackendDispatcher, AlternateCommandDomainBackendDispatcher>>(ASCIILiteral("CommandDomain"), *_controller, WTFMove(alternateDispatcher));
683     _controller->appendExtraAgent(WTFMove(alternateAgent));
684 }
685
686 - (id<RWIProtocolCommandDomainDomainHandler>)commandDomainHandler
687 {
688     return _commandDomainHandler;
689 }
690
691 - (RWIProtocolEventDomainDomainEventDispatcher *)eventDomainEventDispatcher
692 {
693     if (!_eventDomainEventDispatcher)
694         _eventDomainEventDispatcher = [[RWIProtocolEventDomainDomainEventDispatcher alloc] initWithController:_controller];
695     return _eventDomainEventDispatcher;
696 }
697
698 @end
699
700
701 ### End File: RWIProtocolConfiguration.mm
702
703 ### Begin File: RWIProtocolConfiguration.h
704 /*
705  * Copyright (C) 2013 Google Inc. All rights reserved.
706  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
707  * Copyright (C) 2014 University of Washington. All rights reserved.
708  *
709  * Redistribution and use in source and binary forms, with or without
710  * modification, are permitted provided that the following conditions
711  * are met:
712  * 1. Redistributions of source code must retain the above copyright
713  *    notice, this list of conditions and the following disclaimer.
714  * 2. Redistributions in binary form must reproduce the above copyright
715  *    notice, this list of conditions and the following disclaimer in the
716  *    documentation and/or other materials provided with the distribution.
717  *
718  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
719  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
720  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
721  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
722  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
723  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
724  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
725  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
726  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
727  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
728  * THE POSSIBILITY OF SUCH DAMAGE.
729  */
730
731 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
732 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
733
734 #import <WebInspector/RWIProtocol.h>
735
736 __attribute__((visibility ("default")))
737 @interface RWIProtocolConfiguration : NSObject
738 @property (nonatomic, retain, setter=setCommandDomainHandler:) id<RWIProtocolCommandDomainDomainHandler> commandDomainHandler;
739 @property (nonatomic, readonly) RWIProtocolEventDomainDomainEventDispatcher *eventDomainEventDispatcher;
740 @end
741
742
743 ### End File: RWIProtocolConfiguration.h
744
745 ### Begin File: RWIProtocolBackendDispatchers.mm
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 enum-values.json
774 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
775
776 #import "config.h"
777 #import "RWIProtocolBackendDispatchers.h"
778
779 #include "RWIProtocolInternal.h"
780 #include "RWIProtocolEnumConversionHelpers.h"
781 #include <JavaScriptCore/InspectorValues.h>
782
783 namespace Inspector {
784
785
786
787 void ObjCInspectorCommandDomainBackendDispatcher::commandWithEnumReturnValue(long requestId)
788 {
789     id errorCallback = ^(NSString *error) {
790         backendDispatcher()->reportProtocolError(requestId, BackendDispatcher::ServerError, error);
791         backendDispatcher()->sendPendingErrors();
792     };
793
794     id successCallback = ^(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue returnValue) {
795         Ref<InspectorObject> resultObject = InspectorObject::create();
796         resultObject->setString(ASCIILiteral("returnValue"), toProtocolString(returnValue));
797         backendDispatcher()->sendResponse(requestId, WTFMove(resultObject));
798     };
799
800     [m_delegate commandWithEnumReturnValueWithErrorCallback:errorCallback successCallback:successCallback];
801 }
802
803
804
805
806 } // namespace Inspector
807
808 ### End File: RWIProtocolBackendDispatchers.mm
809
810 ### Begin File: RWIProtocolEnumConversionHelpers.h
811 /*
812  * Copyright (C) 2013 Google Inc. All rights reserved.
813  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
814  * Copyright (C) 2014 University of Washington. All rights reserved.
815  *
816  * Redistribution and use in source and binary forms, with or without
817  * modification, are permitted provided that the following conditions
818  * are met:
819  * 1. Redistributions of source code must retain the above copyright
820  *    notice, this list of conditions and the following disclaimer.
821  * 2. Redistributions in binary form must reproduce the above copyright
822  *    notice, this list of conditions and the following disclaimer in the
823  *    documentation and/or other materials provided with the distribution.
824  *
825  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
826  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
827  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
828  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
829  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
830  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
831  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
832  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
833  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
834  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
835  * THE POSSIBILITY OF SUCH DAMAGE.
836  */
837
838 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
839 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
840
841 #import "RWIProtocolArrayConversionHelpers.h"
842
843 namespace Inspector {
844
845 template<typename ObjCEnumType>
846 ObjCEnumType fromProtocolString(const String& value);
847
848
849 inline String toProtocolString(RWIProtocolTypeDomainEnum value)
850 {
851     switch(value) {
852     case RWIProtocolTypeDomainEnumShared:
853         return ASCIILiteral("shared");
854     case RWIProtocolTypeDomainEnumRed:
855         return ASCIILiteral("red");
856     case RWIProtocolTypeDomainEnumGreen:
857         return ASCIILiteral("green");
858     case RWIProtocolTypeDomainEnumBlue:
859         return ASCIILiteral("blue");
860     }
861 }
862
863 template<>
864 inline RWIProtocolTypeDomainEnum fromProtocolString(const String& value)
865 {
866     if (value == "shared")
867         return RWIProtocolTypeDomainEnumShared;
868     if (value == "red")
869         return RWIProtocolTypeDomainEnumRed;
870     if (value == "green")
871         return RWIProtocolTypeDomainEnumGreen;
872     if (value == "blue")
873         return RWIProtocolTypeDomainEnumBlue;
874     ASSERT_NOT_REACHED();
875     return RWIProtocolTypeDomainEnumShared;
876 }
877
878
879 inline String toProtocolString(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue value)
880 {
881     switch(value) {
882     case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared:
883         return ASCIILiteral("shared");
884     case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan:
885         return ASCIILiteral("cyan");
886     case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta:
887         return ASCIILiteral("magenta");
888     case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow:
889         return ASCIILiteral("yellow");
890     }
891 }
892
893 template<>
894 inline RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue fromProtocolString(const String& value)
895 {
896     if (value == "shared")
897         return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared;
898     if (value == "cyan")
899         return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan;
900     if (value == "magenta")
901         return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta;
902     if (value == "yellow")
903         return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow;
904     ASSERT_NOT_REACHED();
905     return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared;
906 }
907
908
909 inline String toProtocolString(RWIProtocolEventDomainEventWithEnumParameterParameter value)
910 {
911     switch(value) {
912     case RWIProtocolEventDomainEventWithEnumParameterParameterShared:
913         return ASCIILiteral("shared");
914     case RWIProtocolEventDomainEventWithEnumParameterParameterBlack:
915         return ASCIILiteral("black");
916     case RWIProtocolEventDomainEventWithEnumParameterParameterWhite:
917         return ASCIILiteral("white");
918     }
919 }
920
921 template<>
922 inline RWIProtocolEventDomainEventWithEnumParameterParameter fromProtocolString(const String& value)
923 {
924     if (value == "shared")
925         return RWIProtocolEventDomainEventWithEnumParameterParameterShared;
926     if (value == "black")
927         return RWIProtocolEventDomainEventWithEnumParameterParameterBlack;
928     if (value == "white")
929         return RWIProtocolEventDomainEventWithEnumParameterParameterWhite;
930     ASSERT_NOT_REACHED();
931     return RWIProtocolEventDomainEventWithEnumParameterParameterShared;
932 }
933
934 } // namespace Inspector
935
936 ### End File: RWIProtocolEnumConversionHelpers.h
937
938 ### Begin File: RWIProtocolEventDispatchers.mm
939 /*
940  * Copyright (C) 2013 Google Inc. All rights reserved.
941  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
942  * Copyright (C) 2014 University of Washington. All rights reserved.
943  *
944  * Redistribution and use in source and binary forms, with or without
945  * modification, are permitted provided that the following conditions
946  * are met:
947  * 1. Redistributions of source code must retain the above copyright
948  *    notice, this list of conditions and the following disclaimer.
949  * 2. Redistributions in binary form must reproduce the above copyright
950  *    notice, this list of conditions and the following disclaimer in the
951  *    documentation and/or other materials provided with the distribution.
952  *
953  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
954  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
955  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
956  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
957  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
958  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
959  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
960  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
961  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
962  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
963  * THE POSSIBILITY OF SUCH DAMAGE.
964  */
965
966 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
967 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
968
969 #import "config.h"
970 #import "RWIProtocolInternal.h"
971
972 #import "RWIProtocolEnumConversionHelpers.h"
973 #import <JavaScriptCore/InspectorValues.h>
974
975 using namespace Inspector;
976
977
978
979
980
981 @implementation RWIProtocolEventDomainDomainEventDispatcher
982 {
983     AugmentableInspectorController* _controller;
984 }
985
986 - (instancetype)initWithController:(AugmentableInspectorController*)controller;
987 {
988     self = [super init];
989     if (!self)
990         return nil;
991     ASSERT(controller);
992     _controller = controller;
993     return self;
994 }
995
996 - (void)eventWithEnumParameterWithParameter:(RWIProtocolEventDomainEventWithEnumParameterParameter)parameter
997 {
998     const FrontendRouter& router = _controller->frontendRouter();
999
1000     Ref<InspectorObject> jsonMessage = InspectorObject::create();
1001     jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("EventDomain.eventWithEnumParameter"));
1002     Ref<InspectorObject> paramsObject = InspectorObject::create();
1003     paramsObject->setString(ASCIILiteral("parameter"), toProtocolString(parameter));
1004     jsonMessage->setObject(ASCIILiteral("params"), WTFMove(paramsObject));
1005     router.sendEvent(jsonMessage->toJSONString());
1006 }
1007
1008 @end
1009
1010
1011 ### End File: RWIProtocolEventDispatchers.mm
1012
1013 ### Begin File: RWIProtocol.h
1014 /*
1015  * Copyright (C) 2013 Google Inc. All rights reserved.
1016  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1017  * Copyright (C) 2014 University of Washington. All rights reserved.
1018  *
1019  * Redistribution and use in source and binary forms, with or without
1020  * modification, are permitted provided that the following conditions
1021  * are met:
1022  * 1. Redistributions of source code must retain the above copyright
1023  *    notice, this list of conditions and the following disclaimer.
1024  * 2. Redistributions in binary form must reproduce the above copyright
1025  *    notice, this list of conditions and the following disclaimer in the
1026  *    documentation and/or other materials provided with the distribution.
1027  *
1028  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1029  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1030  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1031  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1032  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1033  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1034  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1035  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1036  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1037  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1038  * THE POSSIBILITY OF SUCH DAMAGE.
1039  */
1040
1041 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
1042 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1043
1044 #import <Foundation/Foundation.h>
1045
1046 #import <WebInspector/RWIProtocolJSONObject.h>
1047
1048
1049
1050
1051
1052 typedef NS_ENUM(NSInteger, RWIProtocolTypeDomainEnum) {
1053     RWIProtocolTypeDomainEnumShared,
1054     RWIProtocolTypeDomainEnumRed,
1055     RWIProtocolTypeDomainEnumGreen,
1056     RWIProtocolTypeDomainEnumBlue,
1057 };
1058
1059 typedef NS_ENUM(NSInteger, RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue) {
1060     RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared,
1061     RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan,
1062     RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta,
1063     RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow,
1064 };
1065
1066 typedef NS_ENUM(NSInteger, RWIProtocolEventDomainEventWithEnumParameterParameter) {
1067     RWIProtocolEventDomainEventWithEnumParameterParameterShared,
1068     RWIProtocolEventDomainEventWithEnumParameterParameterBlack,
1069     RWIProtocolEventDomainEventWithEnumParameterParameterWhite,
1070 };
1071
1072
1073
1074 @protocol RWIProtocolCommandDomainDomainHandler <NSObject>
1075 @required
1076 - (void)commandWithEnumReturnValueWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue returnValue))successCallback;
1077 @end
1078
1079 __attribute__((visibility ("default")))
1080 @interface RWIProtocolEventDomainDomainEventDispatcher : NSObject
1081 - (void)eventWithEnumParameterWithParameter:(RWIProtocolEventDomainEventWithEnumParameterParameter)parameter;
1082 @end
1083
1084
1085 ### End File: RWIProtocol.h
1086
1087 ### Begin File: RWIProtocolTypes.mm
1088 /*
1089  * Copyright (C) 2013 Google Inc. All rights reserved.
1090  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1091  * Copyright (C) 2014 University of Washington. All rights reserved.
1092  *
1093  * Redistribution and use in source and binary forms, with or without
1094  * modification, are permitted provided that the following conditions
1095  * are met:
1096  * 1. Redistributions of source code must retain the above copyright
1097  *    notice, this list of conditions and the following disclaimer.
1098  * 2. Redistributions in binary form must reproduce the above copyright
1099  *    notice, this list of conditions and the following disclaimer in the
1100  *    documentation and/or other materials provided with the distribution.
1101  *
1102  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1103  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1104  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1105  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1106  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1107  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1108  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1109  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1110  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1111  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1112  * THE POSSIBILITY OF SUCH DAMAGE.
1113  */
1114
1115 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
1116 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1117
1118 #import "config.h"
1119 #import "RWIProtocolInternal.h"
1120
1121 #import "RWIProtocolEnumConversionHelpers.h"
1122 #import <JavaScriptCore/InspectorValues.h>
1123 #import <wtf/Assertions.h>
1124
1125 using namespace Inspector;
1126
1127
1128
1129
1130
1131
1132
1133
1134 ### End File: RWIProtocolTypes.mm
1135
1136 ### Begin File: RWIProtocolInternal.h
1137 /*
1138  * Copyright (C) 2013 Google Inc. All rights reserved.
1139  * Copyright (C) 2013, 2014 Apple Inc. All rights reserved.
1140  * Copyright (C) 2014 University of Washington. All rights reserved.
1141  *
1142  * Redistribution and use in source and binary forms, with or without
1143  * modification, are permitted provided that the following conditions
1144  * are met:
1145  * 1. Redistributions of source code must retain the above copyright
1146  *    notice, this list of conditions and the following disclaimer.
1147  * 2. Redistributions in binary form must reproduce the above copyright
1148  *    notice, this list of conditions and the following disclaimer in the
1149  *    documentation and/or other materials provided with the distribution.
1150  *
1151  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
1152  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
1153  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
1154  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
1155  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1156  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1157  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1158  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1159  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1160  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
1161  * THE POSSIBILITY OF SUCH DAMAGE.
1162  */
1163
1164 // DO NOT EDIT THIS FILE. It is automatically generated from enum-values.json
1165 // by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
1166
1167 #import "RWIProtocol.h"
1168 #import "RWIProtocolJSONObjectInternal.h"
1169 #import <JavaScriptCore/AugmentableInspectorController.h>
1170 #import <JavaScriptCore/InspectorValues.h>
1171
1172 @interface RWIProtocolEventDomainDomainEventDispatcher (Private)
1173 - (instancetype)initWithController:(Inspector::AugmentableInspectorController*)controller;
1174 @end
1175
1176
1177 ### End File: RWIProtocolInternal.h