Source/JavaScriptCore/ChangeLog

 12019-01-22 Devin Rousso <drousso@apple.com>
 2
 3 Web Inspector: expose Audit and Recording versions to the frontend
 4 https://bugs.webkit.org/show_bug.cgi?id=193262
 5 <rdar://problem/47130684>
 6
 7 Reviewed by NOBODY (OOPS!).
 8
 9 * inspector/protocol/Audit.json:
 10 * inspector/protocol/Recording.json:
 11 Add `version` values.
 12
 13 * inspector/scripts/codegen/models.py:
 14 (Protocol.parse_domain):
 15 (Domain.__init__):
 16 (Domain.version): Added.
 17 (Domains):
 18
 19 * inspector/scripts/codegen/generator.py:
 20 (Generator.version_for_domain): Added.
 21
 22 * inspector/scripts/codegen/generate_cpp_protocol_types_header.py:
 23 (CppProtocolTypesHeaderGenerator.generate_output):
 24 (CppProtocolTypesHeaderGenerator._generate_versions): Added.
 25
 26 * inspector/scripts/codegen/generate_js_backend_commands.py:
 27 (JSBackendCommandsGenerator.should_generate_domain):
 28 (JSBackendCommandsGenerator.generate_domain):
 29
 30 * inspector/scripts/tests/generic/version.json: Added.
 31 * inspector/scripts/tests/generic/expected/version.json-result: Added.
 32
 33 * inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result:
 34 * inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result:
 35 * inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result:
 36 * inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result:
 37 * inspector/scripts/tests/generic/expected/domain-availability.json-result:
 38 * inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result:
 39 * inspector/scripts/tests/generic/expected/enum-values.json-result:
 40 * inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result:
 41 * inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result:
 42 * inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result:
 43 * inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result:
 44 * inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result:
 45 * inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result:
 46 * inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result:
 47 * inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result:
 48 * inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result:
 49 * inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result:
 50 * inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result:
 51 * inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result:
 52
1532019-01-22 Yusuke Suzuki <ysuzuki@apple.com>
254
355 [JSC] Intl constructors should fit in sizeof(InternalFunction)

Source/WebCore/ChangeLog

 12019-01-22 Devin Rousso <drousso@apple.com>
 2
 3 Web Inspector: expose Audit and Recording versions to the frontend
 4 https://bugs.webkit.org/show_bug.cgi?id=193262
 5 <rdar://problem/47130684>
 6
 7 Reviewed by NOBODY (OOPS!).
 8
 9 Tests: inspector/audit/version.html
 10 inspector/recording/version.html
 11
 12 * inspector/agents/InspectorCanvasAgent.cpp:
 13 (WebCore::InspectorCanvasAgent::didFinishRecordingCanvasFrame):
 14
1152019-01-22 Alex Christensen <achristensen@webkit.org>
216
317 Fix more builds.

Source/WebInspectorUI/ChangeLog

 12019-01-22 Devin Rousso <drousso@apple.com>
 2
 3 Web Inspector: expose Audit and Recording versions to the frontend
 4 https://bugs.webkit.org/show_bug.cgi?id=193262
 5 <rdar://problem/47130684>
 6
 7 Reviewed by NOBODY (OOPS!).
 8
 9 * UserInterface/Protocol/Connection.js:
 10 (InspectorBackend.WorkerConnection):
 11 (InspectorBackend.TargetConnection):
 12 * UserInterface/Protocol/InspectorBackend.js:
 13 (InspectorBackendClass.prototype.registerVersion): Added.
 14
 15 * UserInterface/Models/AuditTestCase.js:
 16 * UserInterface/Models/Recording.js:
 17 (WI.Recording.fromPayload):
 18 Add Interface version values.
 19
1202019-01-22 Joseph Pecoraro <pecoraro@apple.com>
221
322 Web Inspector: Network Table appears broken after filter - rows look collapsed

Source/JavaScriptCore/inspector/protocol/Audit.json

11{
22 "domain": "Audit",
33 "description": "",
 4 "version": 1,
45 "commands": [
56 {
67 "name": "setup",

Source/JavaScriptCore/inspector/protocol/Recording.json

22 "domain": "Recording",
33 "description": "General types used for recordings of actions performed in the inspected page.",
44 "availability": ["web"],
 5 "version": 1,
56 "types": [
67 {
78 "id": "Type",

Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py

@@class CppProtocolTypesHeaderGenerator(CppGenerator):
6565 sections.append(self.generate_license())
6666 sections.append(Template(CppTemplates.HeaderPrelude).substitute(None, **header_args))
6767 sections.append('namespace Protocol {')
 68 sections.append(self._generate_versions(domains))
6869 sections.append(self._generate_forward_declarations(domains))
6970 sections.append(self._generate_typedefs(domains))
7071 sections.extend(self._generate_enum_constant_value_conversion_methods())

@@class CppProtocolTypesHeaderGenerator(CppGenerator):
8990
9091 return '\n'.join(self.generate_includes_from_entries(header_includes))
9192
 93 def _generate_versions(self, domains):
 94 sections = []
 95
 96 for domain in domains:
 97 version = self.version_for_domain(domain)
 98 if not version:
 99 continue
 100
 101 domain_lines = []
 102 domain_lines.append('namespace %s {' % domain.domain_name)
 103
 104 if isinstance(version, int):
 105 domain_lines.append('static const unsigned VERSION = %s;' % version)
 106
 107 domain_lines.append('} // %s' % domain.domain_name)
 108 sections.append(self.wrap_with_guard_for_domain(domain, '\n'.join(domain_lines)))
 109
 110 if len(sections) == 0:
 111 return ''
 112
 113 return """// Versions.
 114%s
 115// End of versions.
 116""" % '\n\n'.join(sections)
 117
92118 def _generate_forward_declarations(self, domains):
93119 sections = []
94120

Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py

@@class JSBackendCommandsGenerator(Generator):
5252 def should_generate_domain(self, domain):
5353 type_declarations = self.type_declarations_for_domain(domain)
5454 domain_enum_types = [declaration for declaration in type_declarations if isinstance(declaration.type, EnumType)]
55  return len(self.commands_for_domain(domain)) > 0 or len(self.events_for_domain(domain)) > 0 or len(domain_enum_types) > 0
 55 return self.version_for_domain(domain) is not None or len(self.commands_for_domain(domain)) > 0 or len(self.events_for_domain(domain)) > 0 or len(domain_enum_types) > 0
5656
5757 def domains_to_generate(self):
5858 return list(filter(self.should_generate_domain, Generator.domains_to_generate(self)))

@@class JSBackendCommandsGenerator(Generator):
7171
7272 lines.append('// %(domain)s.' % args)
7373
 74 version = self.version_for_domain(domain)
7475 type_declarations = self.type_declarations_for_domain(domain)
7576 commands = self.commands_for_domain(domain)
7677 events = self.events_for_domain(domain)

@@class JSBackendCommandsGenerator(Generator):
7980 if len(events) > 0 or has_async_commands:
8081 lines.append('InspectorBackend.register%(domain)sDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "%(domain)s");' % args)
8182
 83 if isinstance(version, int):
 84 version_args = {
 85 'domain': domain.domain_name,
 86 'version': version
 87 }
 88 lines.append('InspectorBackend.registerVersion("%(domain)s", %(version)s);' % version_args)
 89
8290 for declaration in type_declarations:
8391 if declaration.type.is_enum():
8492 enum_args = {

Source/JavaScriptCore/inspector/scripts/codegen/generator.py

@@class Generator:
108108 def can_generate_platform(self, model_platform):
109109 return model_platform is Platforms.Generic or self._platform is Platforms.All or model_platform is self._platform
110110
 111 def version_for_domain(self, domain):
 112 return domain.version()
 113
111114 def type_declarations_for_domain(self, domain):
112115 return [type_declaration for type_declaration in domain.all_type_declarations() if self.can_generate_platform(type_declaration.platform)]
113116

Source/JavaScriptCore/inspector/scripts/codegen/models.py

@@class Protocol:
368368 check_for_required_properties(['domain'], json, "domain")
369369 log.debug("parse domain " + json['domain'])
370370
 371 version = None
371372 types = []
372373 commands = []
373374 events = []
374375
 376 if 'version' in json:
 377 if not isinstance(json['version'], int):
 378 raise ParseException("Malformed domain specification: version is not a number or string")
 379 version = json['version']
 380
375381 if 'types' in json:
376382 if not isinstance(json['types'], list):
377383 raise ParseException("Malformed domain specification: types is not an array")

@@class Protocol:
395401 if availability_type not in allowed_activation_strings:
396402 raise ParseException('Malformed domain specification: availability is an unsupported string. Was: "%s", Allowed values: %s' % (json['availability'], ', '.join(allowed_activation_strings)))
397403
398  self.domains.append(Domain(json['domain'], json.get('description', ''), json.get('featureGuard'), json.get('availability'), isSupplemental, types, commands, events))
 404 self.domains.append(Domain(json['domain'], json.get('description', ''), json.get('featureGuard'), json.get('availability'), isSupplemental, version, types, commands, events))
399405
400406 def parse_type_declaration(self, json):
401407 check_for_required_properties(['id', 'type'], json, "type")

@@class Protocol:
565571
566572
567573class Domain:
568  def __init__(self, domain_name, description, feature_guard, availability, isSupplemental, type_declarations, commands, events):
 574 def __init__(self, domain_name, description, feature_guard, availability, isSupplemental, version, type_declarations, commands, events):
569575 self.domain_name = domain_name
570576 self.description = description
571577 self.feature_guard = feature_guard
572578 self.availability = availability
573579 self.is_supplemental = isSupplemental
 580 self._version = version
574581 self._type_declarations = type_declarations
575582 self._commands = commands
576583 self._events = events
577584
 585 def version(self):
 586 return self._version
 587
578588 def all_type_declarations(self):
579589 return self._type_declarations
580590

@@class Domain:
599609
600610
601611class Domains:
602  GLOBAL = Domain("", "The global domain, in which primitive types are implicitly declared.", None, None, False, [], [], [])
 612 GLOBAL = Domain("", "The global domain, in which primitive types are implicitly declared.", None, None, False, None, [], [], [])
603613
604614
605615class TypeDeclaration:

Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result

@@namespace Inspector {
409409
410410namespace Protocol {
411411
 412
 413
412414// Forward declarations.
413415namespace Network {
414416class NetworkError;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result

@@namespace Inspector {
603603
604604namespace Protocol {
605605
 606
 607
606608// Forward declarations.
607609namespace Database {
608610class Error;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result

@@namespace Inspector {
518518
519519namespace Protocol {
520520
 521
 522
521523// Forward declarations.
522524namespace Database {
523525class Error;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result

@@namespace Protocol {
319319
320320
321321
 322
 323
322324} // namespace Protocol
323325
324326} // namespace Inspector

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-availability.json-result

@@namespace Protocol {
476476
477477
478478
 479
 480
479481} // namespace Protocol
480482
481483} // namespace Inspector

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result

@@namespace Protocol {
634634
635635
636636
 637
 638
637639// Typedefs.
638640namespace Network2 {
639641/* Unique loader identifier. */

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result

@@namespace Inspector {
437437
438438namespace Protocol {
439439
 440
 441
440442// Forward declarations.
441443namespace TypeDomain {
442444enum class TypeDomainEnum;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result

@@namespace Inspector {
375375
376376namespace Protocol {
377377
 378
 379
378380// Forward declarations.
379381namespace Database {
380382class Error;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result

@@namespace Inspector {
428428
429429namespace Protocol {
430430
 431
 432
431433// Forward declarations.
432434#if PLATFORM(WEB_TYPES)
433435namespace Network2 {

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result

@@namespace Protocol {
315315
316316
317317
 318
 319
318320// Typedefs.
319321namespace Runtime {
320322/* Unique object identifier. */

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result

@@namespace Inspector {
313313
314314namespace Protocol {
315315
 316
 317
316318// Forward declarations.
317319namespace Runtime {
318320class KeyPath;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result

@@namespace Protocol {
315315
316316
317317
 318
 319
318320// Typedefs.
319321namespace Runtime {
320322/* Unique object identifier. */

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result

@@namespace Inspector {
317317
318318namespace Protocol {
319319
 320
 321
320322// Forward declarations.
321323namespace Debugger {
322324enum class Reason;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result

@@namespace Inspector {
318318
319319namespace Protocol {
320320
 321
 322
321323// Forward declarations.
322324namespace Runtime {
323325enum class FarmAnimals;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result

@@namespace Inspector {
319319
320320namespace Protocol {
321321
 322
 323
322324// Forward declarations.
323325namespace Database {
324326class Error;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result

@@namespace Inspector {
318318
319319namespace Protocol {
320320
 321
 322
321323// Forward declarations.
322324namespace Test {
323325class TypeNeedingCast;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result

@@namespace Inspector {
313313
314314namespace Protocol {
315315
 316
 317
316318// Forward declarations.
317319namespace Test {
318320class NoOpenParameters;

Source/JavaScriptCore/inspector/scripts/tests/generic/expected/version.json-result

 1### Begin File: InspectorBackendCommands.js
 2/*
 3 * Copyright (C) 2013 Google Inc. All rights reserved.
 4 * Copyright (C) 2013-2016 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 version.json
 30// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 31
 32// VersionDomain.
 33InspectorBackend.registerVersion("VersionDomain", 42);
 34InspectorBackend.activateDomain("VersionDomain");
 35### End File: InspectorBackendCommands.js
 36
 37### Begin File: TestAlternateBackendDispatchers.h
 38/*
 39 * Copyright (C) 2013 Google Inc. All rights reserved.
 40 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 41 * Copyright (C) 2014 University of Washington. All rights reserved.
 42 *
 43 * Redistribution and use in source and binary forms, with or without
 44 * modification, are permitted provided that the following conditions
 45 * are met:
 46 * 1. Redistributions of source code must retain the above copyright
 47 * notice, this list of conditions and the following disclaimer.
 48 * 2. Redistributions in binary form must reproduce the above copyright
 49 * notice, this list of conditions and the following disclaimer in the
 50 * documentation and/or other materials provided with the distribution.
 51 *
 52 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 53 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 54 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 55 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 56 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 57 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 58 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 59 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 60 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 61 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 62 * THE POSSIBILITY OF SUCH DAMAGE.
 63 */
 64
 65// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 66// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 67
 68#pragma once
 69
 70#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
 71
 72#include "TestProtocolTypes.h"
 73#include <JavaScriptCore/InspectorBackendDispatcher.h>
 74#include <JavaScriptCore/InspectorFrontendRouter.h>
 75
 76namespace Inspector {
 77
 78class AlternateBackendDispatcher {
 79public:
 80 void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTFMove(dispatcher); }
 81 BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
 82private:
 83 RefPtr<BackendDispatcher> m_backendDispatcher;
 84};
 85
 86
 87
 88
 89} // namespace Inspector
 90
 91#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
 92### End File: TestAlternateBackendDispatchers.h
 93
 94### Begin File: TestBackendDispatchers.h
 95/*
 96 * Copyright (C) 2013 Google Inc. All rights reserved.
 97 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 98 * Copyright (C) 2014 University of Washington. All rights reserved.
 99 *
 100 * Redistribution and use in source and binary forms, with or without
 101 * modification, are permitted provided that the following conditions
 102 * are met:
 103 * 1. Redistributions of source code must retain the above copyright
 104 * notice, this list of conditions and the following disclaimer.
 105 * 2. Redistributions in binary form must reproduce the above copyright
 106 * notice, this list of conditions and the following disclaimer in the
 107 * documentation and/or other materials provided with the distribution.
 108 *
 109 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 110 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 111 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 112 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 113 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 114 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 115 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 116 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 117 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 118 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 119 * THE POSSIBILITY OF SUCH DAMAGE.
 120 */
 121
 122// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 123// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 124
 125#pragma once
 126
 127#include "TestProtocolObjects.h"
 128#include <JavaScriptCore/InspectorBackendDispatcher.h>
 129#include <wtf/text/WTFString.h>
 130
 131namespace Inspector {
 132
 133typedef String ErrorString;
 134
 135
 136
 137} // namespace Inspector
 138### End File: TestBackendDispatchers.h
 139
 140### Begin File: TestBackendDispatchers.cpp
 141/*
 142 * Copyright (C) 2013 Google Inc. All rights reserved.
 143 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 144 * Copyright (C) 2014 University of Washington. All rights reserved.
 145 *
 146 * Redistribution and use in source and binary forms, with or without
 147 * modification, are permitted provided that the following conditions
 148 * are met:
 149 * 1. Redistributions of source code must retain the above copyright
 150 * notice, this list of conditions and the following disclaimer.
 151 * 2. Redistributions in binary form must reproduce the above copyright
 152 * notice, this list of conditions and the following disclaimer in the
 153 * documentation and/or other materials provided with the distribution.
 154 *
 155 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 156 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 157 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 158 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 159 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 160 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 161 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 162 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 163 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 164 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 165 * THE POSSIBILITY OF SUCH DAMAGE.
 166 */
 167
 168// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 169// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 170
 171#include "config.h"
 172#include "TestBackendDispatchers.h"
 173
 174#include <JavaScriptCore/InspectorFrontendRouter.h>
 175#include <wtf/JSONValues.h>
 176#include <wtf/NeverDestroyed.h>
 177#include <wtf/text/CString.h>
 178
 179#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
 180#include "TestAlternateBackendDispatchers.h"
 181#endif
 182
 183namespace Inspector {
 184
 185
 186
 187} // namespace Inspector
 188
 189### End File: TestBackendDispatchers.cpp
 190
 191### Begin File: TestFrontendDispatchers.h
 192/*
 193 * Copyright (C) 2013 Google Inc. All rights reserved.
 194 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 195 * Copyright (C) 2014 University of Washington. All rights reserved.
 196 *
 197 * Redistribution and use in source and binary forms, with or without
 198 * modification, are permitted provided that the following conditions
 199 * are met:
 200 * 1. Redistributions of source code must retain the above copyright
 201 * notice, this list of conditions and the following disclaimer.
 202 * 2. Redistributions in binary form must reproduce the above copyright
 203 * notice, this list of conditions and the following disclaimer in the
 204 * documentation and/or other materials provided with the distribution.
 205 *
 206 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 207 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 208 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 209 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 210 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 211 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 212 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 213 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 214 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 215 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 216 * THE POSSIBILITY OF SUCH DAMAGE.
 217 */
 218
 219// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 220// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 221
 222#pragma once
 223
 224#include "TestProtocolObjects.h"
 225#include <wtf/JSONValues.h>
 226#include <wtf/text/WTFString.h>
 227
 228namespace Inspector {
 229
 230class FrontendRouter;
 231
 232} // namespace Inspector
 233### End File: TestFrontendDispatchers.h
 234
 235### Begin File: TestFrontendDispatchers.cpp
 236/*
 237 * Copyright (C) 2013 Google Inc. All rights reserved.
 238 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 239 * Copyright (C) 2014 University of Washington. All rights reserved.
 240 *
 241 * Redistribution and use in source and binary forms, with or without
 242 * modification, are permitted provided that the following conditions
 243 * are met:
 244 * 1. Redistributions of source code must retain the above copyright
 245 * notice, this list of conditions and the following disclaimer.
 246 * 2. Redistributions in binary form must reproduce the above copyright
 247 * notice, this list of conditions and the following disclaimer in the
 248 * documentation and/or other materials provided with the distribution.
 249 *
 250 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 251 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 252 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 253 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 254 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 255 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 256 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 257 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 258 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 259 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 260 * THE POSSIBILITY OF SUCH DAMAGE.
 261 */
 262
 263// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 264// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 265
 266#include "config.h"
 267#include "TestFrontendDispatchers.h"
 268
 269#include <JavaScriptCore/InspectorFrontendRouter.h>
 270#include <wtf/text/CString.h>
 271
 272namespace Inspector {
 273
 274} // namespace Inspector
 275
 276### End File: TestFrontendDispatchers.cpp
 277
 278### Begin File: TestProtocolObjects.h
 279/*
 280 * Copyright (C) 2013 Google Inc. All rights reserved.
 281 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 282 * Copyright (C) 2014 University of Washington. All rights reserved.
 283 *
 284 * Redistribution and use in source and binary forms, with or without
 285 * modification, are permitted provided that the following conditions
 286 * are met:
 287 * 1. Redistributions of source code must retain the above copyright
 288 * notice, this list of conditions and the following disclaimer.
 289 * 2. Redistributions in binary form must reproduce the above copyright
 290 * notice, this list of conditions and the following disclaimer in the
 291 * documentation and/or other materials provided with the distribution.
 292 *
 293 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 294 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 295 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 296 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 297 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 298 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 299 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 300 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 301 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 302 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 303 * THE POSSIBILITY OF SUCH DAMAGE.
 304 */
 305
 306// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 307// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 308
 309#pragma once
 310
 311#include <JavaScriptCore/InspectorProtocolTypes.h>
 312#include <wtf/Assertions.h>
 313
 314namespace Inspector {
 315
 316
 317
 318namespace Protocol {
 319
 320// Versions.
 321namespace VersionDomain {
 322static const unsigned VERSION = 42;
 323} // VersionDomain
 324// End of versions.
 325
 326
 327
 328
 329
 330
 331
 332
 333} // namespace Protocol
 334
 335} // namespace Inspector
 336### End File: TestProtocolObjects.h
 337
 338### Begin File: TestProtocolObjects.cpp
 339/*
 340 * Copyright (C) 2013 Google Inc. All rights reserved.
 341 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 342 * Copyright (C) 2014 University of Washington. All rights reserved.
 343 *
 344 * Redistribution and use in source and binary forms, with or without
 345 * modification, are permitted provided that the following conditions
 346 * are met:
 347 * 1. Redistributions of source code must retain the above copyright
 348 * notice, this list of conditions and the following disclaimer.
 349 * 2. Redistributions in binary form must reproduce the above copyright
 350 * notice, this list of conditions and the following disclaimer in the
 351 * documentation and/or other materials provided with the distribution.
 352 *
 353 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 354 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 355 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 356 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 357 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 358 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 359 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 360 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 361 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 362 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 363 * THE POSSIBILITY OF SUCH DAMAGE.
 364 */
 365
 366// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 367// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 368
 369#include "config.h"
 370#include "TestProtocolObjects.h"
 371
 372#include <wtf/Optional.h>
 373#include <wtf/text/CString.h>
 374
 375namespace Inspector {
 376
 377namespace Protocol {
 378
 379
 380
 381} // namespace Protocol
 382
 383} // namespace Inspector
 384
 385### End File: TestProtocolObjects.cpp
 386
 387### Begin File: TestProtocolBackendDispatchers.h
 388/*
 389 * Copyright (C) 2013 Google Inc. All rights reserved.
 390 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 391 * Copyright (C) 2014 University of Washington. All rights reserved.
 392 *
 393 * Redistribution and use in source and binary forms, with or without
 394 * modification, are permitted provided that the following conditions
 395 * are met:
 396 * 1. Redistributions of source code must retain the above copyright
 397 * notice, this list of conditions and the following disclaimer.
 398 * 2. Redistributions in binary form must reproduce the above copyright
 399 * notice, this list of conditions and the following disclaimer in the
 400 * documentation and/or other materials provided with the distribution.
 401 *
 402 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 403 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 404 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 405 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 406 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 407 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 408 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 409 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 410 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 411 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 412 * THE POSSIBILITY OF SUCH DAMAGE.
 413 */
 414
 415// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 416// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 417
 418#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
 419#include <wtf/RetainPtr.h>
 420
 421
 422
 423namespace Inspector {
 424
 425
 426} // namespace Inspector
 427
 428### End File: TestProtocolBackendDispatchers.h
 429
 430### Begin File: TestProtocolBackendDispatchers.mm
 431/*
 432 * Copyright (C) 2013 Google Inc. All rights reserved.
 433 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 434 * Copyright (C) 2014 University of Washington. All rights reserved.
 435 *
 436 * Redistribution and use in source and binary forms, with or without
 437 * modification, are permitted provided that the following conditions
 438 * are met:
 439 * 1. Redistributions of source code must retain the above copyright
 440 * notice, this list of conditions and the following disclaimer.
 441 * 2. Redistributions in binary form must reproduce the above copyright
 442 * notice, this list of conditions and the following disclaimer in the
 443 * documentation and/or other materials provided with the distribution.
 444 *
 445 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 446 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 447 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 448 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 449 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 450 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 451 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 452 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 453 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 454 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 455 * THE POSSIBILITY OF SUCH DAMAGE.
 456 */
 457
 458// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 459// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 460
 461#import "config.h"
 462#import "TestProtocolBackendDispatchers.h"
 463
 464#include "TestProtocolInternal.h"
 465#include "TestProtocolTypeConversions.h"
 466#include <wtf/JSONValues.h>
 467
 468namespace Inspector {
 469
 470} // namespace Inspector
 471
 472### End File: TestProtocolBackendDispatchers.mm
 473
 474### Begin File: TestProtocolConfiguration.h
 475/*
 476 * Copyright (C) 2013 Google Inc. All rights reserved.
 477 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 478 * Copyright (C) 2014 University of Washington. All rights reserved.
 479 *
 480 * Redistribution and use in source and binary forms, with or without
 481 * modification, are permitted provided that the following conditions
 482 * are met:
 483 * 1. Redistributions of source code must retain the above copyright
 484 * notice, this list of conditions and the following disclaimer.
 485 * 2. Redistributions in binary form must reproduce the above copyright
 486 * notice, this list of conditions and the following disclaimer in the
 487 * documentation and/or other materials provided with the distribution.
 488 *
 489 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 490 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 491 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 492 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 493 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 494 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 495 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 496 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 497 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 498 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 499 * THE POSSIBILITY OF SUCH DAMAGE.
 500 */
 501
 502// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 503// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 504
 505#import <WebInspector/TestProtocol.h>
 506
 507__attribute__((visibility ("default")))
 508@interface TestProtocolConfiguration : NSObject
 509@end
 510
 511
 512### End File: TestProtocolConfiguration.h
 513
 514### Begin File: TestProtocolConfiguration.mm
 515/*
 516 * Copyright (C) 2013 Google Inc. All rights reserved.
 517 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 518 * Copyright (C) 2014 University of Washington. All rights reserved.
 519 *
 520 * Redistribution and use in source and binary forms, with or without
 521 * modification, are permitted provided that the following conditions
 522 * are met:
 523 * 1. Redistributions of source code must retain the above copyright
 524 * notice, this list of conditions and the following disclaimer.
 525 * 2. Redistributions in binary form must reproduce the above copyright
 526 * notice, this list of conditions and the following disclaimer in the
 527 * documentation and/or other materials provided with the distribution.
 528 *
 529 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 530 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 531 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 532 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 533 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 534 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 535 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 536 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 537 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 538 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 539 * THE POSSIBILITY OF SUCH DAMAGE.
 540 */
 541
 542// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 543// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 544
 545#import "TestProtocolConfiguration.h"
 546
 547#import "TestProtocolInternal.h"
 548#import "TestProtocolBackendDispatchers.h"
 549#import <JavaScriptCore/AlternateDispatchableAgent.h>
 550#import <JavaScriptCore/AugmentableInspectorController.h>
 551#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
 552#import <JavaScriptCore/InspectorBackendDispatchers.h>
 553
 554using namespace Inspector;
 555
 556@implementation TestProtocolConfiguration
 557{
 558 AugmentableInspectorController* _controller;
 559}
 560
 561- (instancetype)initWithController:(AugmentableInspectorController*)controller
 562{
 563 self = [super init];
 564 if (!self)
 565 return nil;
 566 ASSERT(controller);
 567 _controller = controller;
 568 return self;
 569}
 570
 571- (void)dealloc
 572{
 573 [super dealloc];
 574}
 575
 576@end
 577
 578
 579### End File: TestProtocolConfiguration.mm
 580
 581### Begin File: TestProtocolEventDispatchers.mm
 582/*
 583 * Copyright (C) 2013 Google Inc. All rights reserved.
 584 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 585 * Copyright (C) 2014 University of Washington. All rights reserved.
 586 *
 587 * Redistribution and use in source and binary forms, with or without
 588 * modification, are permitted provided that the following conditions
 589 * are met:
 590 * 1. Redistributions of source code must retain the above copyright
 591 * notice, this list of conditions and the following disclaimer.
 592 * 2. Redistributions in binary form must reproduce the above copyright
 593 * notice, this list of conditions and the following disclaimer in the
 594 * documentation and/or other materials provided with the distribution.
 595 *
 596 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 597 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 598 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 599 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 600 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 601 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 602 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 603 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 604 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 605 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 606 * THE POSSIBILITY OF SUCH DAMAGE.
 607 */
 608
 609// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 610// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 611
 612#import "TestProtocolInternal.h"
 613
 614#import "TestProtocolTypeConversions.h"
 615#import <wtf/JSONValues.h>
 616
 617using namespace Inspector;
 618
 619
 620### End File: TestProtocolEventDispatchers.mm
 621
 622### Begin File: TestProtocol.h
 623/*
 624 * Copyright (C) 2013 Google Inc. All rights reserved.
 625 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 626 * Copyright (C) 2014 University of Washington. All rights reserved.
 627 *
 628 * Redistribution and use in source and binary forms, with or without
 629 * modification, are permitted provided that the following conditions
 630 * are met:
 631 * 1. Redistributions of source code must retain the above copyright
 632 * notice, this list of conditions and the following disclaimer.
 633 * 2. Redistributions in binary form must reproduce the above copyright
 634 * notice, this list of conditions and the following disclaimer in the
 635 * documentation and/or other materials provided with the distribution.
 636 *
 637 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 638 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 639 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 640 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 641 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 642 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 643 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 644 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 645 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 646 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 647 * THE POSSIBILITY OF SUCH DAMAGE.
 648 */
 649
 650// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 651// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 652
 653#import <Foundation/Foundation.h>
 654
 655#import <WebInspector/RWIProtocolJSONObject.h>
 656
 657
 658
 659
 660typedef NS_ENUM(NSInteger, TestProtocolPlatform) {
 661 TestProtocolPlatformAll,
 662 TestProtocolPlatformGeneric,
 663 TestProtocolPlatformIOS,
 664 TestProtocolPlatformMacOS,
 665};
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676### End File: TestProtocol.h
 677
 678### Begin File: TestProtocolInternal.h
 679/*
 680 * Copyright (C) 2013 Google Inc. All rights reserved.
 681 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 682 * Copyright (C) 2014 University of Washington. All rights reserved.
 683 *
 684 * Redistribution and use in source and binary forms, with or without
 685 * modification, are permitted provided that the following conditions
 686 * are met:
 687 * 1. Redistributions of source code must retain the above copyright
 688 * notice, this list of conditions and the following disclaimer.
 689 * 2. Redistributions in binary form must reproduce the above copyright
 690 * notice, this list of conditions and the following disclaimer in the
 691 * documentation and/or other materials provided with the distribution.
 692 *
 693 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 694 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 695 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 696 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 697 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 698 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 699 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 700 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 701 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 702 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 703 * THE POSSIBILITY OF SUCH DAMAGE.
 704 */
 705
 706// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 707// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 708
 709#import "TestProtocol.h"
 710#import "TestProtocolJSONObjectPrivate.h"
 711#import <JavaScriptCore/AugmentableInspectorController.h>
 712#import <wtf/JSONValues.h>
 713
 714
 715
 716
 717### End File: TestProtocolInternal.h
 718
 719### Begin File: TestProtocolTypeConversions.h
 720/*
 721 * Copyright (C) 2013 Google Inc. All rights reserved.
 722 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 723 * Copyright (C) 2014 University of Washington. All rights reserved.
 724 *
 725 * Redistribution and use in source and binary forms, with or without
 726 * modification, are permitted provided that the following conditions
 727 * are met:
 728 * 1. Redistributions of source code must retain the above copyright
 729 * notice, this list of conditions and the following disclaimer.
 730 * 2. Redistributions in binary form must reproduce the above copyright
 731 * notice, this list of conditions and the following disclaimer in the
 732 * documentation and/or other materials provided with the distribution.
 733 *
 734 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 735 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 736 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 737 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 738 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 739 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 740 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 741 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 742 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 743 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 744 * THE POSSIBILITY OF SUCH DAMAGE.
 745 */
 746
 747// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 748// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 749
 750#import "TestProtocol.h"
 751#import <WebInspector/RWIProtocolArrayConversions.h>
 752
 753namespace Inspector {
 754
 755template<typename ObjCEnumType>
 756Optional<ObjCEnumType> fromProtocolString(const String& value);
 757
 758inline String toProtocolString(TestProtocolPlatform value)
 759{
 760 switch(value) {
 761 case TestProtocolPlatformAll:
 762 return "all"_s;
 763 case TestProtocolPlatformGeneric:
 764 return "generic"_s;
 765 case TestProtocolPlatformIOS:
 766 return "ios"_s;
 767 case TestProtocolPlatformMacOS:
 768 return "macos"_s;
 769 }
 770}
 771
 772template<>
 773inline Optional<TestProtocolPlatform> fromProtocolString(const String& value)
 774{
 775 if (value == "all")
 776 return TestProtocolPlatformAll;
 777 if (value == "generic")
 778 return TestProtocolPlatformGeneric;
 779 if (value == "ios")
 780 return TestProtocolPlatformIOS;
 781 if (value == "macos")
 782 return TestProtocolPlatformMacOS;
 783 return WTF::nullopt;
 784}
 785
 786} // namespace Inspector
 787
 788### End File: TestProtocolTypeConversions.h
 789
 790### Begin File: TestProtocolTypeConversions.mm
 791/*
 792 * Copyright (C) 2013 Google Inc. All rights reserved.
 793 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 794 * Copyright (C) 2014 University of Washington. All rights reserved.
 795 *
 796 * Redistribution and use in source and binary forms, with or without
 797 * modification, are permitted provided that the following conditions
 798 * are met:
 799 * 1. Redistributions of source code must retain the above copyright
 800 * notice, this list of conditions and the following disclaimer.
 801 * 2. Redistributions in binary form must reproduce the above copyright
 802 * notice, this list of conditions and the following disclaimer in the
 803 * documentation and/or other materials provided with the distribution.
 804 *
 805 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 806 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 807 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 808 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 809 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 810 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 811 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 812 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 813 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 814 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 815 * THE POSSIBILITY OF SUCH DAMAGE.
 816 */
 817
 818// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 819// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 820
 821#import "TestProtocolTypeConversions.h"
 822
 823#import "TestProtocol.h"
 824#import "TestProtocolTypeParser.h"
 825#import <WebInspector/RWIProtocolJSONObjectPrivate.h>
 826
 827using namespace Inspector;
 828
 829
 830
 831
 832
 833
 834### End File: TestProtocolTypeConversions.mm
 835
 836### Begin File: TestProtocolTypes.mm
 837/*
 838 * Copyright (C) 2013 Google Inc. All rights reserved.
 839 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
 840 * Copyright (C) 2014 University of Washington. All rights reserved.
 841 *
 842 * Redistribution and use in source and binary forms, with or without
 843 * modification, are permitted provided that the following conditions
 844 * are met:
 845 * 1. Redistributions of source code must retain the above copyright
 846 * notice, this list of conditions and the following disclaimer.
 847 * 2. Redistributions in binary form must reproduce the above copyright
 848 * notice, this list of conditions and the following disclaimer in the
 849 * documentation and/or other materials provided with the distribution.
 850 *
 851 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 852 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 853 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 854 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 855 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 856 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 857 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 858 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 859 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 860 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 861 * THE POSSIBILITY OF SUCH DAMAGE.
 862 */
 863
 864// DO NOT EDIT THIS FILE. It is automatically generated from version.json
 865// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
 866
 867#import "TestProtocolInternal.h"
 868
 869#import "TestProtocolTypeConversions.h"
 870#import <WebInspector/RWIProtocolJSONObjectPrivate.h>
 871#import <wtf/Assertions.h>
 872#import <wtf/JSONValues.h>
 873
 874using namespace Inspector;
 875
 876
 877### End File: TestProtocolTypes.mm

Source/JavaScriptCore/inspector/scripts/tests/generic/version.json

 1{"domains":[
 2{
 3 "domain": "VersionDomain",
 4 "version": 42
 5}
 6]}

Source/JavaScriptCore/inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result

@@namespace Protocol {
319319
320320
321321
 322
 323
322324} // namespace Protocol
323325
324326} // namespace Inspector

Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result

@@namespace Inspector {
409409
410410namespace Protocol {
411411
 412
 413
412414// Forward declarations.
413415namespace Network {
414416class NetworkError;

Source/WebCore/inspector/agents/InspectorCanvasAgent.cpp

@@void InspectorCanvasAgent::didFinishRecordingCanvasFrame(CanvasRenderingContext&
558558 }
559559
560560 auto recording = Inspector::Protocol::Recording::Recording::create()
561  .setVersion(1)
 561 .setVersion(Inspector::Protocol::Recording::VERSION)
562562 .setType(type)
563563 .setInitialState(inspectorCanvas->releaseInitialState())
564564 .setData(inspectorCanvas->releaseData())

Source/WebInspectorUI/UserInterface/Models/AuditTestCase.js

@@WI.AuditTestCase = class AuditTestCase extends WI.AuditTestBase
279279 }
280280};
281281
 282// Keep this in sync with Inspector::Protocol::Audit::VERSION.
 283WI.AuditTestCase.Version = 1;
 284
282285WI.AuditTestCase.TypeIdentifier = "test-case";

Source/WebInspectorUI/UserInterface/Models/Recording.js

@@WI.Recording = class Recording extends WI.Object
5151 if (typeof payload !== "object" || payload === null)
5252 return null;
5353
54  if (isNaN(payload.version) || payload.version <= 0)
 54 if (isNaN(payload.version) || payload.version <= 0 || payload.version > WI.Recording.Version)
5555 return null;
5656
5757 let type = null;

@@WI.Recording = class Recording extends WI.Object
472472 }
473473};
474474
 475// Keep this in sync with Inspector::Protocol::Recording::VERSION.
 476WI.Recording.Version = 1;
 477
475478WI.Recording.Event = {
476479 ProcessedAction: "recording-processed-action",
477480 StartProcessingFrame: "recording-start-processing-frame",

Source/WebInspectorUI/UserInterface/Protocol/Connection.js

@@InspectorBackend.WorkerConnection = class InspectorBackendWorkerConnection exten
302302 clone.connection = this;
303303 if (agent.dispatcher)
304304 clone.dispatcher = new agent.dispatcher.constructor;
 305 if (agent.VERSION !== undefined)
 306 clone.VERSION = agent.VERSION;
305307 this._agents[domain] = clone;
306308 }
307309 }

@@InspectorBackend.TargetConnection = class InspectorBackendTargetConnection exten
325327 clone.connection = this;
326328 if (agent.dispatcher)
327329 clone.dispatcher = new agent.dispatcher.constructor;
 330 if (agent.VERSION !== undefined)
 331 clone.VERSION = agent.VERSION;
328332 this._agents[domain] = clone;
329333 }
330334 }

Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js

@@InspectorBackendClass = class InspectorBackendClass
140140 return this._activeTracers;
141141 }
142142
 143 registerVersion(domainName, version)
 144 {
 145 let agent = this._agentForDomain(domainName);
 146 agent.VERSION = version;
 147 }
 148
143149 registerCommand(qualifiedName, callSignature, replySignature)
144150 {
145151 var [domainName, commandName] = qualifiedName.split(".");

LayoutTests/ChangeLog

 12019-01-22 Devin Rousso <drousso@apple.com>
 2
 3 Web Inspector: expose Audit and Recording versions to the frontend
 4 https://bugs.webkit.org/show_bug.cgi?id=193262
 5 <rdar://problem/47130684>
 6
 7 Reviewed by NOBODY (OOPS!).
 8
 9 * inspector/audit/version.html: Added.
 10 * inspector/audit/version-expected.txt: Added.
 11 * inspector/recording/version.html: Added.
 12 * inspector/recording/version-expected.txt: Added.
 13
1142019-01-22 Michael Catanzaro <mcatanzaro@igalia.com>
215
316 Unreviewed, skip all resource load statistics tests on GTK

LayoutTests/inspector/audit/version-expected.txt

 1Tests Audit.VERSION value.
 2
 3
 4== Running test suite: Audit.VERSION
 5-- Running test case: Audit.VERSION.MatchesFrontend
 6PASS: The audit system version should match the frontend version.
 7

LayoutTests/inspector/audit/version.html

 1<!DOCTYPE html>
 2<html>
 3<head>
 4<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
 5<script>
 6function test()
 7{
 8 let suite = InspectorTest.createSyncSuite("Audit.VERSION");
 9
 10 suite.addTestCase({
 11 name: "Audit.VERSION.MatchesFrontend",
 12 description: "Check that the audit system version is in sync with the frontend version.",
 13 test() {
 14 InspectorTest.expectEqual(AuditAgent.VERSION, WI.AuditTestCase.Version, "The audit system version should match the frontend version.");
 15 return true;
 16 },
 17 });
 18
 19 suite.runTestCasesAndFinish();
 20}
 21</script>
 22</head>
 23<body onload="runTest()">
 24 <p>Tests Audit.VERSION value.</p>
 25</body>
 26</html>

LayoutTests/inspector/recording/version-expected.txt

 1Tests Recording.VERSION value.
 2
 3
 4== Running test suite: Recording.VERSION
 5-- Running test case: Recording.VERSION.MatchesFrontend
 6PASS: The recording system version should match the frontend version.
 7

LayoutTests/inspector/recording/version.html

 1<!DOCTYPE html>
 2<html>
 3<head>
 4<script src="../../http/tests/inspector/resources/inspector-test.js"></script>
 5<script>
 6function test()
 7{
 8 let suite = InspectorTest.createSyncSuite("Recording.VERSION");
 9
 10 suite.addTestCase({
 11 name: "Recording.VERSION.MatchesFrontend",
 12 description: "Check that the recording system version is in sync with the frontend version.",
 13 test() {
 14 InspectorTest.expectEqual(RecordingAgent.VERSION, WI.Recording.Version, "The recording system version should match the frontend version.");
 15 return true;
 16 },
 17 });
 18
 19 suite.runTestCasesAndFinish();
 20}
 21</script>
 22</head>
 23<body onload="runTest()">
 24 <p>Tests Recording.VERSION value.</p>
 25</body>
 26</html>