WebKit Bugzilla
Attachment 359837 Details for
Bug 193262
: Web Inspector: expose Audit and Recording versions to the frontend
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193262-20190122193825.patch (text/plain), 70.90 KB, created by
Devin Rousso
on 2019-01-22 19:38:26 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Devin Rousso
Created:
2019-01-22 19:38:26 PST
Size:
70.90 KB
patch
obsolete
>diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index c34ced4859fe3931fbbc2a2aa5f7cb5ce03beb94..7f4e88ab8b7d55ad9fc606956f8fd2149e81609f 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,55 @@ >+2019-01-22 Devin Rousso <drousso@apple.com> >+ >+ Web Inspector: expose Audit and Recording versions to the frontend >+ https://bugs.webkit.org/show_bug.cgi?id=193262 >+ <rdar://problem/47130684> >+ >+ Reviewed by Joseph Pecoraro. >+ >+ * inspector/protocol/Audit.json: >+ * inspector/protocol/Recording.json: >+ Add `version` values. >+ >+ * inspector/scripts/codegen/models.py: >+ (Protocol.parse_domain): >+ (Domain.__init__): >+ (Domain.version): Added. >+ (Domains): >+ >+ * inspector/scripts/codegen/generator.py: >+ (Generator.version_for_domain): Added. >+ >+ * inspector/scripts/codegen/generate_cpp_protocol_types_header.py: >+ (CppProtocolTypesHeaderGenerator.generate_output): >+ (CppProtocolTypesHeaderGenerator._generate_versions): Added. >+ >+ * inspector/scripts/codegen/generate_js_backend_commands.py: >+ (JSBackendCommandsGenerator.should_generate_domain): >+ (JSBackendCommandsGenerator.generate_domain): >+ >+ * inspector/scripts/tests/generic/version.json: Added. >+ * inspector/scripts/tests/generic/expected/version.json-result: Added. >+ >+ * inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result: >+ * inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result: >+ * inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result: >+ * inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result: >+ * inspector/scripts/tests/generic/expected/domain-availability.json-result: >+ * inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result: >+ * inspector/scripts/tests/generic/expected/enum-values.json-result: >+ * inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result: >+ * inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result: >+ * inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result: >+ * inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result: >+ * inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result: >+ * inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result: >+ * inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result: >+ * inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result: >+ * inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result: >+ * inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result: >+ * inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result: >+ * inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result: >+ > 2019-01-22 Yusuke Suzuki <ysuzuki@apple.com> > > [JSC] Intl constructors should fit in sizeof(InternalFunction) >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index d9ef453f48665c98734ef9afb53cddd3db4fbab4..ffa18e16335c6bf89c767f905a20de6d4f186edf 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,17 @@ >+2019-01-22 Devin Rousso <drousso@apple.com> >+ >+ Web Inspector: expose Audit and Recording versions to the frontend >+ https://bugs.webkit.org/show_bug.cgi?id=193262 >+ <rdar://problem/47130684> >+ >+ Reviewed by Joseph Pecoraro. >+ >+ Tests: inspector/audit/version.html >+ inspector/recording/version.html >+ >+ * inspector/agents/InspectorCanvasAgent.cpp: >+ (WebCore::InspectorCanvasAgent::didFinishRecordingCanvasFrame): >+ > 2019-01-22 Alex Christensen <achristensen@webkit.org> > > Fix more builds. >diff --git a/Source/WebInspectorUI/ChangeLog b/Source/WebInspectorUI/ChangeLog >index 67cdda3ec3a96450140d666744689c76e4f911e5..cc7512e37acb4ea16a68f6289d02d891c027ed06 100644 >--- a/Source/WebInspectorUI/ChangeLog >+++ b/Source/WebInspectorUI/ChangeLog >@@ -1,3 +1,19 @@ >+2019-01-22 Devin Rousso <drousso@apple.com> >+ >+ Web Inspector: expose Audit and Recording versions to the frontend >+ https://bugs.webkit.org/show_bug.cgi?id=193262 >+ <rdar://problem/47130684> >+ >+ Reviewed by Joseph Pecoraro. >+ >+ * UserInterface/Protocol/InspectorBackend.js: >+ (InspectorBackendClass.prototype.registerVersion): Added. >+ >+ * UserInterface/Models/AuditTestCase.js: >+ * UserInterface/Models/Recording.js: >+ (WI.Recording.fromPayload): >+ Add Interface version values. >+ > 2019-01-22 Joseph Pecoraro <pecoraro@apple.com> > > Web Inspector: Network Table appears broken after filter - rows look collapsed >diff --git a/Source/JavaScriptCore/inspector/protocol/Audit.json b/Source/JavaScriptCore/inspector/protocol/Audit.json >index 1637a9ed07f74ca003de4a3debcacebfddf1b0f6..9f6a6bbb6028e103dd9cd572e101d19775c4b0f8 100644 >--- a/Source/JavaScriptCore/inspector/protocol/Audit.json >+++ b/Source/JavaScriptCore/inspector/protocol/Audit.json >@@ -1,6 +1,7 @@ > { > "domain": "Audit", > "description": "", >+ "version": 1, > "commands": [ > { > "name": "setup", >diff --git a/Source/JavaScriptCore/inspector/protocol/Recording.json b/Source/JavaScriptCore/inspector/protocol/Recording.json >index 853710e89edea0525b2e38bb6d708c28684ad545..8dfd70d3fbf3a21225ab248ef28ea5c7ed85bee0 100644 >--- a/Source/JavaScriptCore/inspector/protocol/Recording.json >+++ b/Source/JavaScriptCore/inspector/protocol/Recording.json >@@ -2,6 +2,7 @@ > "domain": "Recording", > "description": "General types used for recordings of actions performed in the inspected page.", > "availability": ["web"], >+ "version": 1, > "types": [ > { > "id": "Type", >diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py >index 871f6a58b45c77182b5eaa1376ad696ea614b93e..0b9afd197a01eb53a5c6b767bee33d7de642a75d 100755 >--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py >+++ b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py >@@ -65,6 +65,7 @@ class CppProtocolTypesHeaderGenerator(CppGenerator): > sections.append(self.generate_license()) > sections.append(Template(CppTemplates.HeaderPrelude).substitute(None, **header_args)) > sections.append('namespace Protocol {') >+ sections.append(self._generate_versions(domains)) > sections.append(self._generate_forward_declarations(domains)) > sections.append(self._generate_typedefs(domains)) > sections.extend(self._generate_enum_constant_value_conversion_methods()) >@@ -89,6 +90,31 @@ class CppProtocolTypesHeaderGenerator(CppGenerator): > > return '\n'.join(self.generate_includes_from_entries(header_includes)) > >+ def _generate_versions(self, domains): >+ sections = [] >+ >+ for domain in domains: >+ version = self.version_for_domain(domain) >+ if not version: >+ continue >+ >+ domain_lines = [] >+ domain_lines.append('namespace %s {' % domain.domain_name) >+ >+ if isinstance(version, int): >+ domain_lines.append('static const unsigned VERSION = %s;' % version) >+ >+ domain_lines.append('} // %s' % domain.domain_name) >+ sections.append(self.wrap_with_guard_for_domain(domain, '\n'.join(domain_lines))) >+ >+ if len(sections) == 0: >+ return '' >+ >+ return """// Versions. >+%s >+// End of versions. >+""" % '\n\n'.join(sections) >+ > def _generate_forward_declarations(self, domains): > sections = [] > >diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py >index 1a881097d9a38d5d084fff140792411f68c09700..d974ea21a4b3731584f3b9775d52653d6d914ae4 100755 >--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py >+++ b/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py >@@ -52,7 +52,7 @@ class JSBackendCommandsGenerator(Generator): > def should_generate_domain(self, domain): > type_declarations = self.type_declarations_for_domain(domain) > domain_enum_types = [declaration for declaration in type_declarations if isinstance(declaration.type, EnumType)] >- return len(self.commands_for_domain(domain)) > 0 or len(self.events_for_domain(domain)) > 0 or len(domain_enum_types) > 0 >+ 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 > > def domains_to_generate(self): > return list(filter(self.should_generate_domain, Generator.domains_to_generate(self))) >@@ -71,6 +71,7 @@ class JSBackendCommandsGenerator(Generator): > > lines.append('// %(domain)s.' % args) > >+ version = self.version_for_domain(domain) > type_declarations = self.type_declarations_for_domain(domain) > commands = self.commands_for_domain(domain) > events = self.events_for_domain(domain) >@@ -79,6 +80,13 @@ class JSBackendCommandsGenerator(Generator): > if len(events) > 0 or has_async_commands: > lines.append('InspectorBackend.register%(domain)sDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "%(domain)s");' % args) > >+ if isinstance(version, int): >+ version_args = { >+ 'domain': domain.domain_name, >+ 'version': version >+ } >+ lines.append('InspectorBackend.registerVersion("%(domain)s", %(version)s);' % version_args) >+ > for declaration in type_declarations: > if declaration.type.is_enum(): > enum_args = { >diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generator.py b/Source/JavaScriptCore/inspector/scripts/codegen/generator.py >index 22bdc81d0afcfae100b38a0fed8ba452f7398f53..86b0f07c799089977e458a3791b321568588896c 100755 >--- a/Source/JavaScriptCore/inspector/scripts/codegen/generator.py >+++ b/Source/JavaScriptCore/inspector/scripts/codegen/generator.py >@@ -108,6 +108,9 @@ class Generator: > def can_generate_platform(self, model_platform): > return model_platform is Platforms.Generic or self._platform is Platforms.All or model_platform is self._platform > >+ def version_for_domain(self, domain): >+ return domain.version() >+ > def type_declarations_for_domain(self, domain): > return [type_declaration for type_declaration in domain.all_type_declarations() if self.can_generate_platform(type_declaration.platform)] > >diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/models.py b/Source/JavaScriptCore/inspector/scripts/codegen/models.py >index a03fd6226e633f76a72d93b9aac7865228c7d1c7..0ff92bddf9d94ef1c2629502d0bab6520afeb55d 100755 >--- a/Source/JavaScriptCore/inspector/scripts/codegen/models.py >+++ b/Source/JavaScriptCore/inspector/scripts/codegen/models.py >@@ -368,10 +368,16 @@ class Protocol: > check_for_required_properties(['domain'], json, "domain") > log.debug("parse domain " + json['domain']) > >+ version = None > types = [] > commands = [] > events = [] > >+ if 'version' in json: >+ if not isinstance(json['version'], int): >+ raise ParseException("Malformed domain specification: version is not a number or string") >+ version = json['version'] >+ > if 'types' in json: > if not isinstance(json['types'], list): > raise ParseException("Malformed domain specification: types is not an array") >@@ -395,7 +401,7 @@ class Protocol: > if availability_type not in allowed_activation_strings: > raise ParseException('Malformed domain specification: availability is an unsupported string. Was: "%s", Allowed values: %s' % (json['availability'], ', '.join(allowed_activation_strings))) > >- self.domains.append(Domain(json['domain'], json.get('description', ''), json.get('featureGuard'), json.get('availability'), isSupplemental, types, commands, events)) >+ self.domains.append(Domain(json['domain'], json.get('description', ''), json.get('featureGuard'), json.get('availability'), isSupplemental, version, types, commands, events)) > > def parse_type_declaration(self, json): > check_for_required_properties(['id', 'type'], json, "type") >@@ -565,16 +571,20 @@ class Protocol: > > > class Domain: >- def __init__(self, domain_name, description, feature_guard, availability, isSupplemental, type_declarations, commands, events): >+ def __init__(self, domain_name, description, feature_guard, availability, isSupplemental, version, type_declarations, commands, events): > self.domain_name = domain_name > self.description = description > self.feature_guard = feature_guard > self.availability = availability > self.is_supplemental = isSupplemental >+ self._version = version > self._type_declarations = type_declarations > self._commands = commands > self._events = events > >+ def version(self): >+ return self._version >+ > def all_type_declarations(self): > return self._type_declarations > >@@ -599,7 +609,7 @@ class Domain: > > > class Domains: >- GLOBAL = Domain("", "The global domain, in which primitive types are implicitly declared.", None, None, False, [], [], []) >+ GLOBAL = Domain("", "The global domain, in which primitive types are implicitly declared.", None, None, False, None, [], [], []) > > > class TypeDeclaration: >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >index af3f8de75b767c6fc429736e93f64b55e0228fe2..1234ca92e4d9fbbd477f7368bfa8cede94eb84f3 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >@@ -409,6 +409,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Network { > class NetworkError; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result >index 3e1331878ccdf105e347ae91f53857f715b76df0..c976f0ba07578337351611c74e4a8476167bbd83 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result >@@ -603,6 +603,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Database { > class Error; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result >index 7b724ac77bbca8efc3e04c12b6291919015f7310..71e8915cec216b4cb32321b0b96edff7d938af34 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result >@@ -518,6 +518,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Database { > class Error; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result >index 040c743bdb37e91fd139c8cffbce8c058090fe8d..a90d580ad4b9d545cbdb8539a8d66b86167bc435 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result >@@ -319,6 +319,8 @@ namespace Protocol { > > > >+ >+ > } // namespace Protocol > > } // namespace Inspector >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-availability.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-availability.json-result >index cb2fc5afd64926b42fd6d66887cf516448f7ca86..678c6aaa85aca384248b9929034ccf094118dee7 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-availability.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-availability.json-result >@@ -476,6 +476,8 @@ namespace Protocol { > > > >+ >+ > } // namespace Protocol > > } // namespace Inspector >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result >index 0629ece33ff6d2c63dd54de7e9516dd44e03a614..f6c5edccb9285af48c6deb98422a7236b8702d4e 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result >@@ -634,6 +634,8 @@ namespace Protocol { > > > >+ >+ > // Typedefs. > namespace Network2 { > /* Unique loader identifier. */ >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >index f22bf8a72d7397861ed22043924c249010e07cea..ff6e9e02b7703d1878a36fb9b834f53b6412c373 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >@@ -437,6 +437,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace TypeDomain { > enum class TypeDomainEnum; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >index 91a518b7655a61797319abc2b2bd01d36278587e..8f743f57abb2aaa7907021fd0db7185ecd72bbff 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >@@ -375,6 +375,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Database { > class Error; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >index 7e3fc81b5621c33ae9f5d8b93c0ae47701251cf5..b5f9e6a183c37a030c2b67af7f7b060e7b262137 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >@@ -428,6 +428,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > #if PLATFORM(WEB_TYPES) > namespace Network2 { >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result >index 17fd92583a672e06de79519336e532af18050634..e457f9a4b78c8571b16e9bfe9528b4240b2a976f 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result >@@ -315,6 +315,8 @@ namespace Protocol { > > > >+ >+ > // Typedefs. > namespace Runtime { > /* Unique object identifier. */ >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result >index a1b500f1a6b6650d5404e2a1a14e0fec92449d09..a89d190ae98a28f2bd1135c704fffdcbeac71018 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result >@@ -313,6 +313,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Runtime { > class KeyPath; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result >index c61ce8041eee57571b65bd7fde9e7988fb0a5fd1..d9d6838901b028eacb3461e26d64932f71c14d1e 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result >@@ -315,6 +315,8 @@ namespace Protocol { > > > >+ >+ > // Typedefs. > namespace Runtime { > /* Unique object identifier. */ >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result >index 307894dfe51424968774e60c14e6713784d3fccf..a6b3c30c3de56287772cd24911969b53729dd723 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result >@@ -317,6 +317,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Debugger { > enum class Reason; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result >index 8a6aab4ef1d4d129af28489ad1bfe081deb4d2fd..44a968675a829bbd72b1d31b886438ab85d355c6 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result >@@ -318,6 +318,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Runtime { > enum class FarmAnimals; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result >index 43e6fa4c2e397c2b88edcf243995455d96184594..0bfc0abb6e62495322273a349da19e6ad183d3e7 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result >@@ -319,6 +319,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Database { > class Error; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result >index 34c4fcce2afc684f5882bfc605f04e5594508786..76d7e10833073f249083a83ecb3027bffb8d53e6 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result >@@ -318,6 +318,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Test { > class TypeNeedingCast; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result >index 104514af9d5d16d43e4ae3d49b715d7dcbbfffd5..c49c3a50ee5ea53a570bfcafade17d1c967f82fd 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result >@@ -313,6 +313,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Test { > class NoOpenParameters; >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/version.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/version.json-result >new file mode 100644 >index 0000000000000000000000000000000000000000..302b7e4e942b3fc71d63542348b2e0c4a516979e >--- /dev/null >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/version.json-result >@@ -0,0 +1,877 @@ >+### Begin File: InspectorBackendCommands.js >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+// VersionDomain. >+InspectorBackend.registerVersion("VersionDomain", 42); >+InspectorBackend.activateDomain("VersionDomain"); >+### End File: InspectorBackendCommands.js >+ >+### Begin File: TestAlternateBackendDispatchers.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#pragma once >+ >+#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) >+ >+#include "TestProtocolTypes.h" >+#include <JavaScriptCore/InspectorBackendDispatcher.h> >+#include <JavaScriptCore/InspectorFrontendRouter.h> >+ >+namespace Inspector { >+ >+class AlternateBackendDispatcher { >+public: >+ void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTFMove(dispatcher); } >+ BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); } >+private: >+ RefPtr<BackendDispatcher> m_backendDispatcher; >+}; >+ >+ >+ >+ >+} // namespace Inspector >+ >+#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) >+### End File: TestAlternateBackendDispatchers.h >+ >+### Begin File: TestBackendDispatchers.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#pragma once >+ >+#include "TestProtocolObjects.h" >+#include <JavaScriptCore/InspectorBackendDispatcher.h> >+#include <wtf/text/WTFString.h> >+ >+namespace Inspector { >+ >+typedef String ErrorString; >+ >+ >+ >+} // namespace Inspector >+### End File: TestBackendDispatchers.h >+ >+### Begin File: TestBackendDispatchers.cpp >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#include "config.h" >+#include "TestBackendDispatchers.h" >+ >+#include <JavaScriptCore/InspectorFrontendRouter.h> >+#include <wtf/JSONValues.h> >+#include <wtf/NeverDestroyed.h> >+#include <wtf/text/CString.h> >+ >+#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS) >+#include "TestAlternateBackendDispatchers.h" >+#endif >+ >+namespace Inspector { >+ >+ >+ >+} // namespace Inspector >+ >+### End File: TestBackendDispatchers.cpp >+ >+### Begin File: TestFrontendDispatchers.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#pragma once >+ >+#include "TestProtocolObjects.h" >+#include <wtf/JSONValues.h> >+#include <wtf/text/WTFString.h> >+ >+namespace Inspector { >+ >+class FrontendRouter; >+ >+} // namespace Inspector >+### End File: TestFrontendDispatchers.h >+ >+### Begin File: TestFrontendDispatchers.cpp >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#include "config.h" >+#include "TestFrontendDispatchers.h" >+ >+#include <JavaScriptCore/InspectorFrontendRouter.h> >+#include <wtf/text/CString.h> >+ >+namespace Inspector { >+ >+} // namespace Inspector >+ >+### End File: TestFrontendDispatchers.cpp >+ >+### Begin File: TestProtocolObjects.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#pragma once >+ >+#include <JavaScriptCore/InspectorProtocolTypes.h> >+#include <wtf/Assertions.h> >+ >+namespace Inspector { >+ >+ >+ >+namespace Protocol { >+ >+// Versions. >+namespace VersionDomain { >+static const unsigned VERSION = 42; >+} // VersionDomain >+// End of versions. >+ >+ >+ >+ >+ >+ >+ >+ >+} // namespace Protocol >+ >+} // namespace Inspector >+### End File: TestProtocolObjects.h >+ >+### Begin File: TestProtocolObjects.cpp >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#include "config.h" >+#include "TestProtocolObjects.h" >+ >+#include <wtf/Optional.h> >+#include <wtf/text/CString.h> >+ >+namespace Inspector { >+ >+namespace Protocol { >+ >+ >+ >+} // namespace Protocol >+ >+} // namespace Inspector >+ >+### End File: TestProtocolObjects.cpp >+ >+### Begin File: TestProtocolBackendDispatchers.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h> >+#include <wtf/RetainPtr.h> >+ >+ >+ >+namespace Inspector { >+ >+ >+} // namespace Inspector >+ >+### End File: TestProtocolBackendDispatchers.h >+ >+### Begin File: TestProtocolBackendDispatchers.mm >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "config.h" >+#import "TestProtocolBackendDispatchers.h" >+ >+#include "TestProtocolInternal.h" >+#include "TestProtocolTypeConversions.h" >+#include <wtf/JSONValues.h> >+ >+namespace Inspector { >+ >+} // namespace Inspector >+ >+### End File: TestProtocolBackendDispatchers.mm >+ >+### Begin File: TestProtocolConfiguration.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import <WebInspector/TestProtocol.h> >+ >+__attribute__((visibility ("default"))) >+@interface TestProtocolConfiguration : NSObject >+@end >+ >+ >+### End File: TestProtocolConfiguration.h >+ >+### Begin File: TestProtocolConfiguration.mm >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocolConfiguration.h" >+ >+#import "TestProtocolInternal.h" >+#import "TestProtocolBackendDispatchers.h" >+#import <JavaScriptCore/AlternateDispatchableAgent.h> >+#import <JavaScriptCore/AugmentableInspectorController.h> >+#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h> >+#import <JavaScriptCore/InspectorBackendDispatchers.h> >+ >+using namespace Inspector; >+ >+@implementation TestProtocolConfiguration >+{ >+ AugmentableInspectorController* _controller; >+} >+ >+- (instancetype)initWithController:(AugmentableInspectorController*)controller >+{ >+ self = [super init]; >+ if (!self) >+ return nil; >+ ASSERT(controller); >+ _controller = controller; >+ return self; >+} >+ >+- (void)dealloc >+{ >+ [super dealloc]; >+} >+ >+@end >+ >+ >+### End File: TestProtocolConfiguration.mm >+ >+### Begin File: TestProtocolEventDispatchers.mm >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocolInternal.h" >+ >+#import "TestProtocolTypeConversions.h" >+#import <wtf/JSONValues.h> >+ >+using namespace Inspector; >+ >+ >+### End File: TestProtocolEventDispatchers.mm >+ >+### Begin File: TestProtocol.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import <Foundation/Foundation.h> >+ >+#import <WebInspector/RWIProtocolJSONObject.h> >+ >+ >+ >+ >+typedef NS_ENUM(NSInteger, TestProtocolPlatform) { >+ TestProtocolPlatformAll, >+ TestProtocolPlatformGeneric, >+ TestProtocolPlatformIOS, >+ TestProtocolPlatformMacOS, >+}; >+ >+ >+ >+ >+ >+ >+ >+ >+ >+ >+### End File: TestProtocol.h >+ >+### Begin File: TestProtocolInternal.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocol.h" >+#import "TestProtocolJSONObjectPrivate.h" >+#import <JavaScriptCore/AugmentableInspectorController.h> >+#import <wtf/JSONValues.h> >+ >+ >+ >+ >+### End File: TestProtocolInternal.h >+ >+### Begin File: TestProtocolTypeConversions.h >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocol.h" >+#import <WebInspector/RWIProtocolArrayConversions.h> >+ >+namespace Inspector { >+ >+template<typename ObjCEnumType> >+Optional<ObjCEnumType> fromProtocolString(const String& value); >+ >+inline String toProtocolString(TestProtocolPlatform value) >+{ >+ switch(value) { >+ case TestProtocolPlatformAll: >+ return "all"_s; >+ case TestProtocolPlatformGeneric: >+ return "generic"_s; >+ case TestProtocolPlatformIOS: >+ return "ios"_s; >+ case TestProtocolPlatformMacOS: >+ return "macos"_s; >+ } >+} >+ >+template<> >+inline Optional<TestProtocolPlatform> fromProtocolString(const String& value) >+{ >+ if (value == "all") >+ return TestProtocolPlatformAll; >+ if (value == "generic") >+ return TestProtocolPlatformGeneric; >+ if (value == "ios") >+ return TestProtocolPlatformIOS; >+ if (value == "macos") >+ return TestProtocolPlatformMacOS; >+ return WTF::nullopt; >+} >+ >+} // namespace Inspector >+ >+### End File: TestProtocolTypeConversions.h >+ >+### Begin File: TestProtocolTypeConversions.mm >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocolTypeConversions.h" >+ >+#import "TestProtocol.h" >+#import "TestProtocolTypeParser.h" >+#import <WebInspector/RWIProtocolJSONObjectPrivate.h> >+ >+using namespace Inspector; >+ >+ >+ >+ >+ >+ >+### End File: TestProtocolTypeConversions.mm >+ >+### Begin File: TestProtocolTypes.mm >+/* >+ * Copyright (C) 2013 Google Inc. All rights reserved. >+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved. >+ * Copyright (C) 2014 University of Washington. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+// DO NOT EDIT THIS FILE. It is automatically generated from version.json >+// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py >+ >+#import "TestProtocolInternal.h" >+ >+#import "TestProtocolTypeConversions.h" >+#import <WebInspector/RWIProtocolJSONObjectPrivate.h> >+#import <wtf/Assertions.h> >+#import <wtf/JSONValues.h> >+ >+using namespace Inspector; >+ >+ >+### End File: TestProtocolTypes.mm >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/version.json b/Source/JavaScriptCore/inspector/scripts/tests/generic/version.json >new file mode 100644 >index 0000000000000000000000000000000000000000..507a5d90176b8fdf33718b32db33b3a0aa356009 >--- /dev/null >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/version.json >@@ -0,0 +1,6 @@ >+{"domains":[ >+{ >+ "domain": "VersionDomain", >+ "version": 42 >+} >+]} >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result >index 040c743bdb37e91fd139c8cffbce8c058090fe8d..a90d580ad4b9d545cbdb8539a8d66b86167bc435 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result >@@ -319,6 +319,8 @@ namespace Protocol { > > > >+ >+ > } // namespace Protocol > > } // namespace Inspector >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >index af3f8de75b767c6fc429736e93f64b55e0228fe2..1234ca92e4d9fbbd477f7368bfa8cede94eb84f3 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >@@ -409,6 +409,8 @@ namespace Inspector { > > namespace Protocol { > >+ >+ > // Forward declarations. > namespace Network { > class NetworkError; >diff --git a/Source/WebCore/inspector/agents/InspectorCanvasAgent.cpp b/Source/WebCore/inspector/agents/InspectorCanvasAgent.cpp >index e38d1a383d3394214b7ba8bf4056faf834ba009d..e937f14347e4ad6ad523f90cd65a87896ef3359c 100644 >--- a/Source/WebCore/inspector/agents/InspectorCanvasAgent.cpp >+++ b/Source/WebCore/inspector/agents/InspectorCanvasAgent.cpp >@@ -558,7 +558,7 @@ void InspectorCanvasAgent::didFinishRecordingCanvasFrame(CanvasRenderingContext& > } > > auto recording = Inspector::Protocol::Recording::Recording::create() >- .setVersion(1) >+ .setVersion(Inspector::Protocol::Recording::VERSION) > .setType(type) > .setInitialState(inspectorCanvas->releaseInitialState()) > .setData(inspectorCanvas->releaseData()) >diff --git a/Source/WebInspectorUI/UserInterface/Models/AuditTestCase.js b/Source/WebInspectorUI/UserInterface/Models/AuditTestCase.js >index 92b2faddb11e3d7de78d6e6340d2af33da6839a1..e670590ac68fb3f28e91fe94f4e4d202e171658c 100644 >--- a/Source/WebInspectorUI/UserInterface/Models/AuditTestCase.js >+++ b/Source/WebInspectorUI/UserInterface/Models/AuditTestCase.js >@@ -279,4 +279,7 @@ WI.AuditTestCase = class AuditTestCase extends WI.AuditTestBase > } > }; > >+// Keep this in sync with Inspector::Protocol::Audit::VERSION. >+WI.AuditTestCase.Version = 1; >+ > WI.AuditTestCase.TypeIdentifier = "test-case"; >diff --git a/Source/WebInspectorUI/UserInterface/Models/Recording.js b/Source/WebInspectorUI/UserInterface/Models/Recording.js >index d05f104155d031b9ad3d52a08c2d898c76adb483..e53f7b0dd195d12e2d7c7bc70b2118294628d350 100644 >--- a/Source/WebInspectorUI/UserInterface/Models/Recording.js >+++ b/Source/WebInspectorUI/UserInterface/Models/Recording.js >@@ -51,7 +51,7 @@ WI.Recording = class Recording extends WI.Object > if (typeof payload !== "object" || payload === null) > return null; > >- if (isNaN(payload.version) || payload.version <= 0) >+ if (isNaN(payload.version) || payload.version <= 0 || payload.version > WI.Recording.Version) > return null; > > let type = null; >@@ -472,6 +472,9 @@ WI.Recording = class Recording extends WI.Object > } > }; > >+// Keep this in sync with Inspector::Protocol::Recording::VERSION. >+WI.Recording.Version = 1; >+ > WI.Recording.Event = { > ProcessedAction: "recording-processed-action", > StartProcessingFrame: "recording-start-processing-frame", >diff --git a/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js b/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js >index ce6e97e420eb584bd35e8b6468fd8efef9950ae0..737d6c6c12efd1b86b73fde79c0c11e733d9f6c2 100644 >--- a/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js >+++ b/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js >@@ -140,6 +140,12 @@ InspectorBackendClass = class InspectorBackendClass > return this._activeTracers; > } > >+ registerVersion(domainName, version) >+ { >+ let agent = this._agentForDomain(domainName); >+ agent.VERSION = version; >+ } >+ > registerCommand(qualifiedName, callSignature, replySignature) > { > var [domainName, commandName] = qualifiedName.split("."); >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index c90ff2522694442acb58d914bdfd086cff8dc8ec..f952601e8656c1e0d444a28aef49bbc579042e57 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,16 @@ >+2019-01-22 Devin Rousso <drousso@apple.com> >+ >+ Web Inspector: expose Audit and Recording versions to the frontend >+ https://bugs.webkit.org/show_bug.cgi?id=193262 >+ <rdar://problem/47130684> >+ >+ Reviewed by Joseph Pecoraro. >+ >+ * inspector/audit/version.html: Added. >+ * inspector/audit/version-expected.txt: Added. >+ * inspector/recording/version.html: Added. >+ * inspector/recording/version-expected.txt: Added. >+ > 2019-01-22 Michael Catanzaro <mcatanzaro@igalia.com> > > Unreviewed, skip all resource load statistics tests on GTK >diff --git a/LayoutTests/inspector/audit/version-expected.txt b/LayoutTests/inspector/audit/version-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..d69a2f3429a527aba83d64f2d43ca228b1739187 >--- /dev/null >+++ b/LayoutTests/inspector/audit/version-expected.txt >@@ -0,0 +1,7 @@ >+Tests Audit.VERSION value. >+ >+ >+== Running test suite: Audit.VERSION >+-- Running test case: Audit.VERSION.MatchesFrontend >+PASS: The audit system version should match the frontend version. >+ >diff --git a/LayoutTests/inspector/audit/version.html b/LayoutTests/inspector/audit/version.html >new file mode 100644 >index 0000000000000000000000000000000000000000..e3cd7f276e602f14df316e30c7dfe18018c61073 >--- /dev/null >+++ b/LayoutTests/inspector/audit/version.html >@@ -0,0 +1,26 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<script src="../../http/tests/inspector/resources/inspector-test.js"></script> >+<script> >+function test() >+{ >+ let suite = InspectorTest.createSyncSuite("Audit.VERSION"); >+ >+ suite.addTestCase({ >+ name: "Audit.VERSION.MatchesFrontend", >+ description: "Check that the audit system version is in sync with the frontend version.", >+ test() { >+ InspectorTest.expectEqual(AuditAgent.VERSION, WI.AuditTestCase.Version, "The audit system version should match the frontend version."); >+ return true; >+ }, >+ }); >+ >+ suite.runTestCasesAndFinish(); >+} >+</script> >+</head> >+<body onload="runTest()"> >+ <p>Tests Audit.VERSION value.</p> >+</body> >+</html> >diff --git a/LayoutTests/inspector/recording/version-expected.txt b/LayoutTests/inspector/recording/version-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..37f6aa11cbdcd7e9866380c137e7cb88f45c222f >--- /dev/null >+++ b/LayoutTests/inspector/recording/version-expected.txt >@@ -0,0 +1,7 @@ >+Tests Recording.VERSION value. >+ >+ >+== Running test suite: Recording.VERSION >+-- Running test case: Recording.VERSION.MatchesFrontend >+PASS: The recording system version should match the frontend version. >+ >diff --git a/LayoutTests/inspector/recording/version.html b/LayoutTests/inspector/recording/version.html >new file mode 100644 >index 0000000000000000000000000000000000000000..5f049816697bdd4afc5e13f00646670b045021c3 >--- /dev/null >+++ b/LayoutTests/inspector/recording/version.html >@@ -0,0 +1,26 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<script src="../../http/tests/inspector/resources/inspector-test.js"></script> >+<script> >+function test() >+{ >+ let suite = InspectorTest.createSyncSuite("Recording.VERSION"); >+ >+ suite.addTestCase({ >+ name: "Recording.VERSION.MatchesFrontend", >+ description: "Check that the recording system version is in sync with the frontend version.", >+ test() { >+ InspectorTest.expectEqual(RecordingAgent.VERSION, WI.Recording.Version, "The recording system version should match the frontend version."); >+ return true; >+ }, >+ }); >+ >+ suite.runTestCasesAndFinish(); >+} >+</script> >+</head> >+<body onload="runTest()"> >+ <p>Tests Recording.VERSION value.</p> >+</body> >+</html>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193262
:
358648
|
358649
|
359000
|
359252
|
359254
|
359790
| 359837