summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/inspector/scripts
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2015-05-20 09:56:07 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2015-05-20 09:56:07 +0000
commit41386e9cb918eed93b3f13648cbef387e371e451 (patch)
treea97f9d7bd1d9d091833286085f72da9d83fd0606 /Source/JavaScriptCore/inspector/scripts
parente15dd966d523731101f70ccf768bba12435a0208 (diff)
downloadWebKitGtk-tarball-41386e9cb918eed93b3f13648cbef387e371e451.tar.gz
webkitgtk-2.4.9webkitgtk-2.4.9
Diffstat (limited to 'Source/JavaScriptCore/inspector/scripts')
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/CodeGeneratorInspector.py2613
-rw-r--r--Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspectorStrings.py342
-rw-r--r--Source/JavaScriptCore/inspector/scripts/codegen/__init__.py24
-rw-r--r--Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator.py314
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py263
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py92
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py208
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py310
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py117
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py121
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py352
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py183
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py137
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py106
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py195
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_header.py87
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_implementation.py150
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_conversion_helpers.py155
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py157
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_header.py229
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_internal_header.py75
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_types_implementation.py160
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/generator.py241
-rw-r--r--Source/JavaScriptCore/inspector/scripts/codegen/generator_templates.py61
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/models.py591
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/objc_generator.py523
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/codegen/objc_generator_templates.py155
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py1
-rwxr-xr-xSource/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py211
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/commands-with-async-attribute.json109
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/commands-with-optional-call-return-parameters.json85
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/domains-with-varying-command-sizes.json54
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/enum-values.json35
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/events-with-optional-parameters.json59
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-async-attribute.json-result1637
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result1486
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result1318
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/enum-values.json-result1172
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/events-with-optional-parameters.json-result1108
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-domain-availability.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-call-parameter-names.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-return-parameter-names.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-event-parameter-names.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-declarations.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-member-names.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-enum-with-no-values.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-parameter-flag.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-type-member.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-declaration-using-type-reference.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-with-lowercase-name.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-declaration.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-member.json-error1
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result1159
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/same-type-id-different-domain.json-result841
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result984
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result826
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-array-type.json-result893
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-enum-type.json-result925
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-object-type.json-result1736
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result1372
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-domain-availability.json9
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-call-parameter-names.json16
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-return-parameter-names.json16
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-event-parameter-names.json12
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-declarations.json15
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-member-names.json15
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-enum-with-no-values.json10
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-parameter-flag.json18
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-type-member.json16
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-declaration-using-type-reference.json13
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-with-lowercase-name.json10
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-declaration.json12
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-member.json15
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/generate-domains-with-feature-guards.json36
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/same-type-id-different-domain.json22
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/shadowed-optional-type-setters.json31
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/type-declaration-aliased-primitive-type.json10
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/type-declaration-array-type.json50
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/type-declaration-enum-type.json15
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/type-declaration-object-type.json83
-rw-r--r--Source/JavaScriptCore/inspector/scripts/tests/type-requiring-runtime-casts.json51
81 files changed, 2955 insertions, 21505 deletions
diff --git a/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspector.py b/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspector.py
new file mode 100755
index 000000000..9c6195ff4
--- /dev/null
+++ b/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspector.py
@@ -0,0 +1,2613 @@
+#!/usr/bin/env python
+# Copyright (c) 2011 Google Inc. All rights reserved.
+# Copyright (c) 2012 Intel Corporation. All rights reserved.
+# Copyright (c) 2013 Apple Inc. All Rights Reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * 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.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+# OWNER OR 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.
+
+import os.path
+import sys
+import string
+import optparse
+import re
+try:
+ import json
+except ImportError:
+ import simplejson as json
+
+import CodeGeneratorInspectorStrings
+
+
+DOMAIN_DEFINE_NAME_MAP = {
+ "Database": "SQL_DATABASE",
+ "IndexedDB": "INDEXED_DATABASE",
+}
+
+
+# Manually-filled map of type name replacements.
+TYPE_NAME_FIX_MAP = {
+ "RGBA": "Rgba", # RGBA is reported to be conflicting with a define name in Windows CE.
+ "": "Empty",
+}
+
+
+TYPES_WITH_RUNTIME_CAST_SET = frozenset(["Runtime.RemoteObject", "Runtime.PropertyDescriptor", "Runtime.InternalPropertyDescriptor",
+ "Debugger.FunctionDetails", "Debugger.CallFrame",
+ "Canvas.TraceLog", "Canvas.ResourceInfo", "Canvas.ResourceState",
+ # This should be a temporary hack. TimelineEvent should be created via generated C++ API.
+ "Timeline.TimelineEvent"])
+
+TYPES_WITH_OPEN_FIELD_LIST_SET = frozenset(["Timeline.TimelineEvent",
+ # InspectorStyleSheet not only creates this property but wants to read it and modify it.
+ "CSS.CSSProperty",
+ # InspectorResourceAgent needs to update mime-type.
+ "Network.Response"])
+
+EXACTLY_INT_SUPPORTED = False
+
+INSPECTOR_TYPES_GENERATOR_CONFIG_MAP = {
+ "JavaScript": {
+ "prefix": "JS",
+ "typebuilder_dependency": "",
+ "export_macro": "JS_EXPORT_PRIVATE",
+ },
+ "Web": {
+ "prefix": "Web",
+ "typebuilder_dependency": "#include <inspector/InspectorJSTypeBuilders.h>",
+ "export_macro": "",
+ },
+}
+
+cmdline_parser = optparse.OptionParser(usage="usage: %prog [options] <Inspector.json>")
+cmdline_parser.add_option("--output_h_dir")
+cmdline_parser.add_option("--output_cpp_dir")
+cmdline_parser.add_option("--output_js_dir")
+cmdline_parser.add_option("--output_type") # JavaScript, Web
+cmdline_parser.add_option("--write_always", action="store_true")
+cmdline_parser.add_option("--no_verification", action="store_true")
+
+try:
+ arg_options, arg_values = cmdline_parser.parse_args()
+ if (len(arg_values) < 1):
+ raise Exception("At least one plain argument expected")
+
+ input_json_filename = arg_values[0]
+ dependency_json_filenames = arg_values[1:]
+
+ output_header_dirname = arg_options.output_h_dir
+ output_cpp_dirname = arg_options.output_cpp_dir
+ output_js_dirname = arg_options.output_js_dir
+ output_type = arg_options.output_type
+
+ write_always = arg_options.write_always
+ verification = not arg_options.no_verification
+ if not output_header_dirname:
+ raise Exception("Output .h directory must be specified")
+ if not output_cpp_dirname:
+ raise Exception("Output .cpp directory must be specified")
+ if not output_js_dirname:
+ raise Exception("Output .js directory must be specified")
+ if output_type not in INSPECTOR_TYPES_GENERATOR_CONFIG_MAP.keys():
+ raise Exception("Unknown output type. Allowed types are: %s" % INSPECTOR_TYPES_GENERATOR_CONFIG_MAP.keys())
+except Exception:
+ # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html
+ exc = sys.exc_info()[1]
+ sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc)
+ sys.stderr.write("Usage: <script> Inspector.json --output_h_dir <output_header_dir> --output_cpp_dir <output_cpp_dir> --output_js_dir <output_js_dir> [--write_always] [--no_verification]\n")
+ exit(1)
+
+
+def dash_to_camelcase(word):
+ return ''.join(x.capitalize() or '-' for x in word.split('-'))
+
+
+def fix_camel_case(name):
+ refined = re.sub(r'-(\w)', lambda pat: pat.group(1).upper(), name)
+ refined = to_title_case(refined)
+ return re.sub(r'(?i)HTML|XML|WML|API|GC|XHR|DOM|CSS', lambda pat: pat.group(0).upper(), refined)
+
+
+def to_title_case(name):
+ return name[:1].upper() + name[1:]
+
+
+class Capitalizer:
+ @staticmethod
+ def lower_camel_case_to_upper(str):
+ if len(str) > 0 and str[0].islower():
+ str = str[0].upper() + str[1:]
+ return str
+
+ @staticmethod
+ def upper_camel_case_to_lower(str):
+ pos = 0
+ while pos < len(str) and str[pos].isupper():
+ pos += 1
+ if pos == 0:
+ return str
+ if pos == 1:
+ return str[0].lower() + str[1:]
+ if pos < len(str):
+ pos -= 1
+ possible_abbreviation = str[0:pos]
+ if possible_abbreviation not in Capitalizer.ABBREVIATION:
+ raise Exception("Unknown abbreviation %s" % possible_abbreviation)
+ str = possible_abbreviation.lower() + str[pos:]
+ return str
+
+ @staticmethod
+ def camel_case_to_capitalized_with_underscores(str):
+ if len(str) == 0:
+ return str
+ output = Capitalizer.split_camel_case_(str)
+ return "_".join(output).upper()
+
+ @staticmethod
+ def split_camel_case_(str):
+ output = []
+ pos_being = 0
+ pos = 1
+ has_oneletter = False
+ while pos < len(str):
+ if str[pos].isupper():
+ output.append(str[pos_being:pos].upper())
+ if pos - pos_being == 1:
+ has_oneletter = True
+ pos_being = pos
+ pos += 1
+ output.append(str[pos_being:])
+ if has_oneletter:
+ array_pos = 0
+ while array_pos < len(output) - 1:
+ if len(output[array_pos]) == 1:
+ array_pos_end = array_pos + 1
+ while array_pos_end < len(output) and len(output[array_pos_end]) == 1:
+ array_pos_end += 1
+ if array_pos_end - array_pos > 1:
+ possible_abbreviation = "".join(output[array_pos:array_pos_end])
+ if possible_abbreviation.upper() in Capitalizer.ABBREVIATION:
+ output[array_pos:array_pos_end] = [possible_abbreviation]
+ else:
+ array_pos = array_pos_end - 1
+ array_pos += 1
+ return output
+
+ ABBREVIATION = frozenset(["XHR", "DOM", "CSS"])
+
+VALIDATOR_IFDEF_NAME = "!ASSERT_DISABLED"
+
+
+class DomainNameFixes:
+ @classmethod
+ def get_fixed_data(cls, domain_name):
+ field_name_res = Capitalizer.upper_camel_case_to_lower(domain_name) + "Agent"
+
+ class Res(object):
+ skip_js_bind = domain_name in cls.skip_js_bind_domains
+
+ @staticmethod
+ def get_guard():
+ if domain_name in DOMAIN_DEFINE_NAME_MAP:
+ define_name = DOMAIN_DEFINE_NAME_MAP[domain_name]
+
+ class Guard:
+ @staticmethod
+ def generate_open(output):
+ output.append("#if ENABLE(%s)\n" % define_name)
+
+ @staticmethod
+ def generate_close(output):
+ output.append("#endif // ENABLE(%s)\n" % define_name)
+
+ return Guard
+
+ return Res
+
+ skip_js_bind_domains = set(["DOMDebugger"])
+
+
+class RawTypes(object):
+ @staticmethod
+ def get(json_type):
+ if json_type == "boolean":
+ return RawTypes.Bool
+ elif json_type == "string":
+ return RawTypes.String
+ elif json_type == "array":
+ return RawTypes.Array
+ elif json_type == "object":
+ return RawTypes.Object
+ elif json_type == "integer":
+ return RawTypes.Int
+ elif json_type == "number":
+ return RawTypes.Number
+ elif json_type == "any":
+ return RawTypes.Any
+ else:
+ raise Exception("Unknown type: %s" % json_type)
+
+ # For output parameter all values are passed by pointer except RefPtr-based types.
+ class OutputPassModel:
+ class ByPointer:
+ @staticmethod
+ def get_argument_prefix():
+ return "&"
+
+ @staticmethod
+ def get_parameter_type_suffix():
+ return "*"
+
+ class ByReference:
+ @staticmethod
+ def get_argument_prefix():
+ return ""
+
+ @staticmethod
+ def get_parameter_type_suffix():
+ return "&"
+
+ class BaseType(object):
+ need_internal_runtime_cast_ = False
+
+ @classmethod
+ def request_raw_internal_runtime_cast(cls):
+ if not cls.need_internal_runtime_cast_:
+ cls.need_internal_runtime_cast_ = True
+
+ @classmethod
+ def get_raw_validator_call_text(cls):
+ return "RuntimeCastHelper::assertType<Inspector::InspectorValue::Type%s>" % cls.get_validate_method_params().template_type
+
+ class String(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "String"
+
+ get_setter_name = get_getter_name
+
+ @staticmethod
+ def get_c_initializer():
+ return "\"\""
+
+ @staticmethod
+ def get_js_bind_type():
+ return "string"
+
+ @staticmethod
+ def get_validate_method_params():
+ class ValidateMethodParams:
+ template_type = "String"
+ return ValidateMethodParams
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByPointer
+
+ @staticmethod
+ def is_heavy_value():
+ return True
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "String"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.String
+
+ class Int(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Int"
+
+ @staticmethod
+ def get_setter_name():
+ return "Number"
+
+ @staticmethod
+ def get_c_initializer():
+ return "0"
+
+ @staticmethod
+ def get_js_bind_type():
+ return "number"
+
+ @classmethod
+ def get_raw_validator_call_text(cls):
+ return "RuntimeCastHelper::assertInt"
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByPointer
+
+ @staticmethod
+ def is_heavy_value():
+ return False
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "int"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Int
+
+ class Number(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Double"
+
+ @staticmethod
+ def get_setter_name():
+ return "Number"
+
+ @staticmethod
+ def get_c_initializer():
+ return "0"
+
+ @staticmethod
+ def get_js_bind_type():
+ return "number"
+
+ @staticmethod
+ def get_validate_method_params():
+ class ValidateMethodParams:
+ template_type = "Number"
+ return ValidateMethodParams
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByPointer
+
+ @staticmethod
+ def is_heavy_value():
+ return False
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "double"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Number
+
+ class Bool(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Boolean"
+
+ get_setter_name = get_getter_name
+
+ @staticmethod
+ def get_c_initializer():
+ return "false"
+
+ @staticmethod
+ def get_js_bind_type():
+ return "boolean"
+
+ @staticmethod
+ def get_validate_method_params():
+ class ValidateMethodParams:
+ template_type = "Boolean"
+ return ValidateMethodParams
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByPointer
+
+ @staticmethod
+ def is_heavy_value():
+ return False
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "bool"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Bool
+
+ class Object(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Object"
+
+ @staticmethod
+ def get_setter_name():
+ return "Value"
+
+ @staticmethod
+ def get_c_initializer():
+ return "InspectorObject::create()"
+
+ @staticmethod
+ def get_js_bind_type():
+ return "object"
+
+ @staticmethod
+ def get_output_argument_prefix():
+ return ""
+
+ @staticmethod
+ def get_validate_method_params():
+ class ValidateMethodParams:
+ template_type = "Object"
+ return ValidateMethodParams
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByReference
+
+ @staticmethod
+ def is_heavy_value():
+ return True
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "Inspector::InspectorObject"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Object
+
+ class Any(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Value"
+
+ get_setter_name = get_getter_name
+
+ @staticmethod
+ def get_c_initializer():
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def get_js_bind_type():
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def get_raw_validator_call_text():
+ return "RuntimeCastHelper::assertAny"
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByReference
+
+ @staticmethod
+ def is_heavy_value():
+ return True
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "Inspector::InspectorValue"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Any
+
+ class Array(BaseType):
+ @staticmethod
+ def get_getter_name():
+ return "Array"
+
+ @staticmethod
+ def get_setter_name():
+ return "Value"
+
+ @staticmethod
+ def get_c_initializer():
+ return "InspectorArray::create()"
+
+ @staticmethod
+ def get_js_bind_type():
+ return "object"
+
+ @staticmethod
+ def get_output_argument_prefix():
+ return ""
+
+ @staticmethod
+ def get_validate_method_params():
+ class ValidateMethodParams:
+ template_type = "Array"
+ return ValidateMethodParams
+
+ @staticmethod
+ def get_output_pass_model():
+ return RawTypes.OutputPassModel.ByReference
+
+ @staticmethod
+ def is_heavy_value():
+ return True
+
+ @staticmethod
+ def get_array_item_raw_c_type_text():
+ return "Inspector::InspectorArray"
+
+ @staticmethod
+ def get_raw_type_model():
+ return TypeModel.Array
+
+
+def replace_right_shift(input_str):
+ return input_str.replace(">>", "> >")
+
+
+class CommandReturnPassModel:
+ class ByReference:
+ def __init__(self, var_type, set_condition):
+ self.var_type = var_type
+ self.set_condition = set_condition
+
+ def get_return_var_type(self):
+ return self.var_type
+
+ @staticmethod
+ def get_output_argument_prefix():
+ return ""
+
+ @staticmethod
+ def get_output_to_raw_expression():
+ return "%s"
+
+ def get_output_parameter_type(self):
+ return self.var_type + "&"
+
+ def get_set_return_condition(self):
+ return self.set_condition
+
+ class ByPointer:
+ def __init__(self, var_type):
+ self.var_type = var_type
+
+ def get_return_var_type(self):
+ return self.var_type
+
+ @staticmethod
+ def get_output_argument_prefix():
+ return "&"
+
+ @staticmethod
+ def get_output_to_raw_expression():
+ return "%s"
+
+ def get_output_parameter_type(self):
+ return self.var_type + "*"
+
+ @staticmethod
+ def get_set_return_condition():
+ return None
+
+ class OptOutput:
+ def __init__(self, var_type):
+ self.var_type = var_type
+
+ def get_return_var_type(self):
+ return "Inspector::TypeBuilder::OptOutput<%s>" % self.var_type
+
+ @staticmethod
+ def get_output_argument_prefix():
+ return "&"
+
+ @staticmethod
+ def get_output_to_raw_expression():
+ return "%s.getValue()"
+
+ def get_output_parameter_type(self):
+ return "Inspector::TypeBuilder::OptOutput<%s>*" % self.var_type
+
+ @staticmethod
+ def get_set_return_condition():
+ return "%s.isAssigned()"
+
+
+class TypeModel:
+ class RefPtrBased(object):
+ def __init__(self, class_name):
+ self.class_name = class_name
+ self.optional = False
+
+ def get_optional(self):
+ result = TypeModel.RefPtrBased(self.class_name)
+ result.optional = True
+ return result
+
+ def get_command_return_pass_model(self):
+ if self.optional:
+ set_condition = "%s"
+ else:
+ set_condition = None
+ return CommandReturnPassModel.ByReference(replace_right_shift("RefPtr<%s>" % self.class_name), set_condition)
+
+ def get_input_param_type_text(self):
+ return replace_right_shift("PassRefPtr<%s>" % self.class_name)
+
+ @staticmethod
+ def get_event_setter_expression_pattern():
+ return "%s"
+
+ class Enum(object):
+ def __init__(self, base_type_name):
+ self.type_name = base_type_name + "::Enum"
+
+ def get_optional(base_self):
+ class EnumOptional:
+ @classmethod
+ def get_optional(cls):
+ return cls
+
+ @staticmethod
+ def get_command_return_pass_model():
+ return CommandReturnPassModel.OptOutput(base_self.type_name)
+
+ @staticmethod
+ def get_input_param_type_text():
+ return base_self.type_name + "*"
+
+ @staticmethod
+ def get_event_setter_expression_pattern():
+ raise Exception("TODO")
+ return EnumOptional
+
+ def get_command_return_pass_model(self):
+ return CommandReturnPassModel.ByPointer(self.type_name)
+
+ def get_input_param_type_text(self):
+ return self.type_name
+
+ @staticmethod
+ def get_event_setter_expression_pattern():
+ return "%s"
+
+ class ValueType(object):
+ def __init__(self, type_name, is_heavy):
+ self.type_name = type_name
+ self.is_heavy = is_heavy
+
+ def get_optional(self):
+ return self.ValueOptional(self)
+
+ def get_command_return_pass_model(self):
+ return CommandReturnPassModel.ByPointer(self.type_name)
+
+ def get_input_param_type_text(self):
+ if self.is_heavy:
+ return "const %s&" % self.type_name
+ else:
+ return self.type_name
+
+ def get_opt_output_type_(self):
+ return self.type_name
+
+ @staticmethod
+ def get_event_setter_expression_pattern():
+ return "%s"
+
+ class ValueOptional:
+ def __init__(self, base):
+ self.base = base
+
+ def get_optional(self):
+ return self
+
+ def get_command_return_pass_model(self):
+ return CommandReturnPassModel.OptOutput(self.base.get_opt_output_type_())
+
+ def get_input_param_type_text(self):
+ return "const %s* const" % self.base.type_name
+
+ @staticmethod
+ def get_event_setter_expression_pattern():
+ return "*%s"
+
+ class ExactlyInt(ValueType):
+ def __init__(self):
+ TypeModel.ValueType.__init__(self, "int", False)
+
+ def get_input_param_type_text(self):
+ return "Inspector::TypeBuilder::ExactlyInt"
+
+ def get_opt_output_type_(self):
+ return "Inspector::TypeBuilder::ExactlyInt"
+
+ @classmethod
+ def init_class(cls):
+ cls.Bool = cls.ValueType("bool", False)
+ if EXACTLY_INT_SUPPORTED:
+ cls.Int = cls.ExactlyInt()
+ else:
+ cls.Int = cls.ValueType("int", False)
+ cls.Number = cls.ValueType("double", False)
+ cls.String = cls.ValueType("String", True,)
+ cls.Object = cls.RefPtrBased("Inspector::InspectorObject")
+ cls.Array = cls.RefPtrBased("Inspector::InspectorArray")
+ cls.Any = cls.RefPtrBased("Inspector::InspectorValue")
+
+TypeModel.init_class()
+
+
+# Collection of InspectorObject class methods that are likely to be overloaded in generated class.
+# We must explicitly import all overloaded methods or they won't be available to user.
+INSPECTOR_OBJECT_SETTER_NAMES = frozenset(["setValue", "setBoolean", "setNumber", "setString", "setValue", "setObject", "setArray"])
+
+
+def fix_type_name(json_name):
+ if json_name in TYPE_NAME_FIX_MAP:
+ fixed = TYPE_NAME_FIX_MAP[json_name]
+
+ class Result(object):
+ class_name = fixed
+
+ @staticmethod
+ def output_comment(writer):
+ writer.newline("// Type originally was named '%s'.\n" % json_name)
+ else:
+
+ class Result(object):
+ class_name = json_name
+
+ @staticmethod
+ def output_comment(writer):
+ pass
+
+ return Result
+
+
+class Writer:
+ def __init__(self, output, indent):
+ self.output = output
+ self.indent = indent
+
+ def newline(self, str):
+ if (self.indent):
+ self.output.append(self.indent)
+ self.output.append(str)
+
+ def append(self, str):
+ self.output.append(str)
+
+ def newline_multiline(self, str):
+ parts = str.split('\n')
+ self.newline(parts[0])
+ for p in parts[1:]:
+ self.output.append('\n')
+ if p:
+ self.newline(p)
+
+ def append_multiline(self, str):
+ parts = str.split('\n')
+ self.append(parts[0])
+ for p in parts[1:]:
+ self.output.append('\n')
+ if p:
+ self.newline(p)
+
+ def get_indent(self):
+ return self.indent
+
+ def get_indented(self, additional_indent):
+ return Writer(self.output, self.indent + additional_indent)
+
+ def insert_writer(self, additional_indent):
+ new_output = []
+ self.output.append(new_output)
+ return Writer(new_output, self.indent + additional_indent)
+
+
+class EnumConstants:
+ map_ = {}
+ constants_ = []
+
+ @classmethod
+ def add_constant(cls, value):
+ if value in cls.map_:
+ return cls.map_[value]
+ else:
+ pos = len(cls.map_)
+ cls.map_[value] = pos
+ cls.constants_.append(value)
+ return pos
+
+ @classmethod
+ def get_enum_constant_code(cls):
+ output = []
+ for item in cls.constants_:
+ output.append(" \"" + item + "\"")
+ return ",\n".join(output) + "\n"
+
+
+# Typebuilder code is generated in several passes: first typedefs, then other classes.
+# Manual pass management is needed because we cannot have forward declarations for typedefs.
+class TypeBuilderPass:
+ TYPEDEF = "typedef"
+ MAIN = "main"
+
+
+class TypeBindings:
+ @staticmethod
+ def create_named_type_declaration(json_typable, context_domain_name, type_data):
+ json_type = type_data.get_json_type()
+
+ class Helper:
+ is_ad_hoc = False
+ full_name_prefix_for_use = "Inspector::TypeBuilder::" + context_domain_name + "::"
+ full_name_prefix_for_impl = "Inspector::TypeBuilder::" + context_domain_name + "::"
+
+ @staticmethod
+ def write_doc(writer):
+ if "description" in json_type:
+ writer.newline("/* ")
+ writer.append(json_type["description"])
+ writer.append(" */\n")
+
+ @staticmethod
+ def add_to_forward_listener(forward_listener):
+ forward_listener.add_type_data(type_data)
+
+
+ fixed_type_name = fix_type_name(json_type["id"])
+ return TypeBindings.create_type_declaration_(json_typable, context_domain_name, fixed_type_name, Helper)
+
+ @staticmethod
+ def create_ad_hoc_type_declaration(json_typable, context_domain_name, ad_hoc_type_context):
+ class Helper:
+ is_ad_hoc = True
+ full_name_prefix_for_use = ad_hoc_type_context.container_relative_name_prefix
+ full_name_prefix_for_impl = ad_hoc_type_context.container_full_name_prefix
+
+ @staticmethod
+ def write_doc(writer):
+ pass
+
+ @staticmethod
+ def add_to_forward_listener(forward_listener):
+ pass
+ fixed_type_name = ad_hoc_type_context.get_type_name_fix()
+ return TypeBindings.create_type_declaration_(json_typable, context_domain_name, fixed_type_name, Helper)
+
+ @staticmethod
+ def create_type_declaration_(json_typable, context_domain_name, fixed_type_name, helper):
+ if json_typable["type"] == "string":
+ if "enum" in json_typable:
+
+ class EnumBinding:
+ need_user_runtime_cast_ = False
+ need_internal_runtime_cast_ = False
+
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @classmethod
+ def request_user_runtime_cast(cls, request):
+ if request:
+ cls.need_user_runtime_cast_ = True
+ request.acknowledge()
+
+ @classmethod
+ def request_internal_runtime_cast(cls):
+ cls.need_internal_runtime_cast_ = True
+
+ @classmethod
+ def get_code_generator(enum_binding_cls):
+ #FIXME: generate ad-hoc enums too once we figure out how to better implement them in C++.
+ comment_out = helper.is_ad_hoc
+
+ class CodeGenerator:
+ @staticmethod
+ def generate_type_builder(writer, generate_context):
+ enum = json_typable["enum"]
+ helper.write_doc(writer)
+ enum_name = fixed_type_name.class_name
+ fixed_type_name.output_comment(writer)
+ writer.newline("struct ")
+ writer.append(enum_name)
+ writer.append(" {\n")
+ writer.newline(" enum Enum {\n")
+ for enum_item in enum:
+ enum_pos = EnumConstants.add_constant(enum_item)
+
+ item_c_name = fix_camel_case(enum_item)
+ if item_c_name in TYPE_NAME_FIX_MAP:
+ item_c_name = TYPE_NAME_FIX_MAP[item_c_name]
+ writer.newline(" ")
+ writer.append(item_c_name)
+ writer.append(" = ")
+ writer.append("%s" % enum_pos)
+ writer.append(",\n")
+ writer.newline(" };\n")
+ if enum_binding_cls.need_user_runtime_cast_:
+ raise Exception("Not yet implemented")
+
+ if enum_binding_cls.need_internal_runtime_cast_:
+ writer.append("#if %s\n" % VALIDATOR_IFDEF_NAME)
+ writer.newline(" static void assertCorrectValue(Inspector::InspectorValue* value);\n")
+ writer.append("#endif // %s\n" % VALIDATOR_IFDEF_NAME)
+
+ validator_writer = generate_context.validator_writer
+
+ domain_fixes = DomainNameFixes.get_fixed_data(context_domain_name)
+ domain_guard = domain_fixes.get_guard()
+ if domain_guard:
+ domain_guard.generate_open(validator_writer)
+
+ validator_writer.newline("void %s%s::assertCorrectValue(Inspector::InspectorValue* value)\n" % (helper.full_name_prefix_for_impl, enum_name))
+ validator_writer.newline("{\n")
+ validator_writer.newline(" WTF::String s;\n")
+ validator_writer.newline(" bool cast_res = value->asString(&s);\n")
+ validator_writer.newline(" ASSERT(cast_res);\n")
+ if len(enum) > 0:
+ condition_list = []
+ for enum_item in enum:
+ enum_pos = EnumConstants.add_constant(enum_item)
+ condition_list.append("s == \"%s\"" % enum_item)
+ validator_writer.newline(" ASSERT(%s);\n" % " || ".join(condition_list))
+ validator_writer.newline("}\n")
+
+ if domain_guard:
+ domain_guard.generate_close(validator_writer)
+
+ validator_writer.newline("\n\n")
+
+ writer.newline("}; // struct ")
+ writer.append(enum_name)
+ writer.append("\n")
+
+ @staticmethod
+ def register_use(forward_listener):
+ pass
+
+ @staticmethod
+ def get_generate_pass_id():
+ return TypeBuilderPass.MAIN
+
+ return CodeGenerator
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return helper.full_name_prefix_for_use + fixed_type_name.class_name + "::assertCorrectValue"
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return helper.full_name_prefix_for_use + fixed_type_name.class_name + "::Enum"
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return "Inspector::TypeBuilder::get%sEnumConstantValue(%s)"
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.String
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.Enum(helper.full_name_prefix_for_use + fixed_type_name.class_name)
+
+ return EnumBinding
+ else:
+ if helper.is_ad_hoc:
+
+ class PlainString:
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @staticmethod
+ def request_user_runtime_cast(request):
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def request_internal_runtime_cast():
+ pass
+
+ @staticmethod
+ def get_code_generator():
+ return None
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return RawTypes.String.get_raw_validator_call_text()
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.String
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.String
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return cls.reduce_to_raw_type().get_array_item_raw_c_type_text()
+
+ return PlainString
+
+ else:
+
+ class TypedefString:
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @staticmethod
+ def request_user_runtime_cast(request):
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def request_internal_runtime_cast():
+ RawTypes.String.request_raw_internal_runtime_cast()
+
+ @staticmethod
+ def get_code_generator():
+ class CodeGenerator:
+ @staticmethod
+ def generate_type_builder(writer, generate_context):
+ helper.write_doc(writer)
+ fixed_type_name.output_comment(writer)
+ writer.newline("typedef String ")
+ writer.append(fixed_type_name.class_name)
+ writer.append(";\n\n")
+
+ @staticmethod
+ def register_use(forward_listener):
+ pass
+
+ @staticmethod
+ def get_generate_pass_id():
+ return TypeBuilderPass.TYPEDEF
+
+ return CodeGenerator
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return RawTypes.String.get_raw_validator_call_text()
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.String
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.ValueType("%s%s" % (helper.full_name_prefix_for_use, fixed_type_name.class_name), True)
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return "const %s%s&" % (helper.full_name_prefix_for_use, fixed_type_name.class_name)
+
+ return TypedefString
+
+ elif json_typable["type"] == "integer":
+ if helper.is_ad_hoc:
+
+ class PlainInteger:
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @staticmethod
+ def request_user_runtime_cast(request):
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def request_internal_runtime_cast():
+ pass
+
+ @staticmethod
+ def get_code_generator():
+ return None
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return RawTypes.Int.get_raw_validator_call_text()
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.Int
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.Int
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return cls.reduce_to_raw_type().get_array_item_raw_c_type_text()
+
+ return PlainInteger
+
+ else:
+
+ class TypedefInteger:
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @staticmethod
+ def request_user_runtime_cast(request):
+ raise Exception("Unsupported")
+
+ @staticmethod
+ def request_internal_runtime_cast():
+ RawTypes.Int.request_raw_internal_runtime_cast()
+
+ @staticmethod
+ def get_code_generator():
+ class CodeGenerator:
+ @staticmethod
+ def generate_type_builder(writer, generate_context):
+ helper.write_doc(writer)
+ fixed_type_name.output_comment(writer)
+ writer.newline("typedef int ")
+ writer.append(fixed_type_name.class_name)
+ writer.append(";\n\n")
+
+ @staticmethod
+ def register_use(forward_listener):
+ pass
+
+ @staticmethod
+ def get_generate_pass_id():
+ return TypeBuilderPass.TYPEDEF
+
+ return CodeGenerator
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return RawTypes.Int.get_raw_validator_call_text()
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.Int
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.Int
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return helper.full_name_prefix_for_use + fixed_type_name.class_name
+
+ return TypedefInteger
+
+ elif json_typable["type"] == "object":
+ if "properties" in json_typable:
+
+ class ClassBinding:
+ resolve_data_ = None
+ need_user_runtime_cast_ = False
+ need_internal_runtime_cast_ = False
+
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ if cls.resolve_data_:
+ return
+
+ properties = json_typable["properties"]
+ main = []
+ optional = []
+
+ ad_hoc_type_list = []
+
+ for prop in properties:
+ prop_name = prop["name"]
+ ad_hoc_type_context = cls.AdHocTypeContextImpl(prop_name, fixed_type_name.class_name, resolve_context, ad_hoc_type_list, helper.full_name_prefix_for_impl)
+ binding = resolve_param_type(prop, context_domain_name, ad_hoc_type_context)
+
+ code_generator = binding.get_code_generator()
+ if code_generator:
+ code_generator.register_use(resolve_context.forward_listener)
+
+ class PropertyData:
+ param_type_binding = binding
+ p = prop
+
+ if prop.get("optional"):
+ optional.append(PropertyData)
+ else:
+ main.append(PropertyData)
+
+ class ResolveData:
+ main_properties = main
+ optional_properties = optional
+ ad_hoc_types = ad_hoc_type_list
+
+ cls.resolve_data_ = ResolveData
+
+ for ad_hoc in ad_hoc_type_list:
+ ad_hoc.resolve_inner(resolve_context)
+
+ @classmethod
+ def request_user_runtime_cast(cls, request):
+ if not request:
+ return
+ cls.need_user_runtime_cast_ = True
+ request.acknowledge()
+ cls.request_internal_runtime_cast()
+
+ @classmethod
+ def request_internal_runtime_cast(cls):
+ if cls.need_internal_runtime_cast_:
+ return
+ cls.need_internal_runtime_cast_ = True
+ for p in cls.resolve_data_.main_properties:
+ p.param_type_binding.request_internal_runtime_cast()
+ for p in cls.resolve_data_.optional_properties:
+ p.param_type_binding.request_internal_runtime_cast()
+
+ @classmethod
+ def get_code_generator(class_binding_cls):
+ class CodeGenerator:
+ @classmethod
+ def generate_type_builder(cls, writer, generate_context):
+ resolve_data = class_binding_cls.resolve_data_
+ helper.write_doc(writer)
+ class_name = fixed_type_name.class_name
+
+ is_open_type = (context_domain_name + "." + class_name) in TYPES_WITH_OPEN_FIELD_LIST_SET
+
+ fixed_type_name.output_comment(writer)
+ writer.newline("class ")
+ writer.append(class_name)
+ writer.append(" : public ")
+ if is_open_type:
+ writer.append("Inspector::InspectorObject")
+ else:
+ writer.append("Inspector::InspectorObjectBase")
+ writer.append(" {\n")
+ writer.newline("public:\n")
+ ad_hoc_type_writer = writer.insert_writer(" ")
+
+ for ad_hoc_type in resolve_data.ad_hoc_types:
+ code_generator = ad_hoc_type.get_code_generator()
+ if code_generator:
+ code_generator.generate_type_builder(ad_hoc_type_writer, generate_context)
+
+ writer.newline_multiline(
+""" enum {
+ NoFieldsSet = 0,
+""")
+
+ state_enum_items = []
+ if len(resolve_data.main_properties) > 0:
+ pos = 0
+ for prop_data in resolve_data.main_properties:
+ item_name = Capitalizer.lower_camel_case_to_upper(prop_data.p["name"]) + "Set"
+ state_enum_items.append(item_name)
+ writer.newline(" %s = 1 << %s,\n" % (item_name, pos))
+ pos += 1
+ all_fields_set_value = "(" + (" | ".join(state_enum_items)) + ")"
+ else:
+ all_fields_set_value = "0"
+
+ writer.newline_multiline(CodeGeneratorInspectorStrings.class_binding_builder_part_1
+ % (all_fields_set_value, class_name, class_name))
+
+ pos = 0
+ for prop_data in resolve_data.main_properties:
+ prop_name = prop_data.p["name"]
+
+ param_type_binding = prop_data.param_type_binding
+ param_raw_type = param_type_binding.reduce_to_raw_type()
+
+ writer.newline_multiline(CodeGeneratorInspectorStrings.class_binding_builder_part_2
+ % (state_enum_items[pos],
+ Capitalizer.lower_camel_case_to_upper(prop_name),
+ param_type_binding.get_type_model().get_input_param_type_text(),
+ state_enum_items[pos], prop_name,
+ param_raw_type.get_setter_name(), prop_name,
+ format_setter_value_expression(param_type_binding, "value"),
+ state_enum_items[pos]))
+
+ pos += 1
+
+ writer.newline_multiline(CodeGeneratorInspectorStrings.class_binding_builder_part_3
+ % (class_name, class_name, class_name, class_name, class_name))
+
+ writer.newline(" /*\n")
+ writer.newline(" * Synthetic constructor:\n")
+ writer.newline(" * RefPtr<%s> result = %s::create()" % (class_name, class_name))
+ for prop_data in resolve_data.main_properties:
+ writer.append_multiline("\n * .set%s(...)" % Capitalizer.lower_camel_case_to_upper(prop_data.p["name"]))
+ writer.append_multiline(";\n */\n")
+
+ writer.newline_multiline(CodeGeneratorInspectorStrings.class_binding_builder_part_4)
+
+ writer.newline(" typedef Inspector::TypeBuilder::StructItemTraits ItemTraits;\n")
+
+ for prop_data in resolve_data.optional_properties:
+ prop_name = prop_data.p["name"]
+ param_type_binding = prop_data.param_type_binding
+ setter_name = "set%s" % Capitalizer.lower_camel_case_to_upper(prop_name)
+
+ writer.append_multiline("\n void %s" % setter_name)
+ writer.append("(%s value)\n" % param_type_binding.get_type_model().get_input_param_type_text())
+ writer.newline(" {\n")
+ writer.newline(" this->set%s(ASCIILiteral(\"%s\"), %s);\n"
+ % (param_type_binding.reduce_to_raw_type().get_setter_name(), prop_data.p["name"],
+ format_setter_value_expression(param_type_binding, "value")))
+ writer.newline(" }\n")
+
+
+ if setter_name in INSPECTOR_OBJECT_SETTER_NAMES:
+ writer.newline(" using Inspector::InspectorObjectBase::%s;\n\n" % setter_name)
+
+ if class_binding_cls.need_user_runtime_cast_:
+ writer.newline(" static PassRefPtr<%s> runtimeCast(PassRefPtr<Inspector::InspectorValue> value)\n" % class_name)
+ writer.newline(" {\n")
+ writer.newline(" RefPtr<Inspector::InspectorObject> object;\n")
+ writer.newline(" bool castRes = value->asObject(&object);\n")
+ writer.newline(" ASSERT_UNUSED(castRes, castRes);\n")
+ writer.append("#if %s\n" % VALIDATOR_IFDEF_NAME)
+ writer.newline(" assertCorrectValue(object.get());\n")
+ writer.append("#endif // %s\n" % VALIDATOR_IFDEF_NAME)
+ writer.newline(" COMPILE_ASSERT(sizeof(%s) == sizeof(Inspector::InspectorObjectBase), type_cast_problem);\n" % class_name)
+ writer.newline(" return static_cast<%s*>(static_cast<Inspector::InspectorObjectBase*>(object.get()));\n" % class_name)
+ writer.newline(" }\n")
+ writer.append("\n")
+
+ if class_binding_cls.need_internal_runtime_cast_:
+ writer.append("#if %s\n" % VALIDATOR_IFDEF_NAME)
+ writer.newline(" static %s void assertCorrectValue(Inspector::InspectorValue* value);\n" % INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["export_macro"])
+ writer.append("#endif // %s\n" % VALIDATOR_IFDEF_NAME)
+
+ closed_field_set = (context_domain_name + "." + class_name) not in TYPES_WITH_OPEN_FIELD_LIST_SET
+
+ validator_writer = generate_context.validator_writer
+
+ domain_fixes = DomainNameFixes.get_fixed_data(context_domain_name)
+ domain_guard = domain_fixes.get_guard()
+ if domain_guard:
+ domain_guard.generate_open(validator_writer)
+
+ validator_writer.newline("void %s%s::assertCorrectValue(Inspector::InspectorValue* value)\n" % (helper.full_name_prefix_for_impl, class_name))
+ validator_writer.newline("{\n")
+ validator_writer.newline(" RefPtr<InspectorObject> object;\n")
+ validator_writer.newline(" bool castRes = value->asObject(&object);\n")
+ validator_writer.newline(" ASSERT_UNUSED(castRes, castRes);\n")
+ for prop_data in resolve_data.main_properties:
+ validator_writer.newline(" {\n")
+ it_name = "%sPos" % prop_data.p["name"]
+ validator_writer.newline(" InspectorObject::iterator %s;\n" % it_name)
+ validator_writer.newline(" %s = object->find(\"%s\");\n" % (it_name, prop_data.p["name"]))
+ validator_writer.newline(" ASSERT(%s != object->end());\n" % it_name)
+ validator_writer.newline(" %s(%s->value.get());\n" % (prop_data.param_type_binding.get_validator_call_text(), it_name))
+ validator_writer.newline(" }\n")
+
+ if closed_field_set:
+ validator_writer.newline(" int foundPropertiesCount = %s;\n" % len(resolve_data.main_properties))
+
+ for prop_data in resolve_data.optional_properties:
+ validator_writer.newline(" {\n")
+ it_name = "%sPos" % prop_data.p["name"]
+ validator_writer.newline(" InspectorObject::iterator %s;\n" % it_name)
+ validator_writer.newline(" %s = object->find(\"%s\");\n" % (it_name, prop_data.p["name"]))
+ validator_writer.newline(" if (%s != object->end()) {\n" % it_name)
+ validator_writer.newline(" %s(%s->value.get());\n" % (prop_data.param_type_binding.get_validator_call_text(), it_name))
+ if closed_field_set:
+ validator_writer.newline(" ++foundPropertiesCount;\n")
+ validator_writer.newline(" }\n")
+ validator_writer.newline(" }\n")
+
+ if closed_field_set:
+ validator_writer.newline(" if (foundPropertiesCount != object->size())\n")
+ validator_writer.newline(" FATAL(\"Unexpected properties in object: %s\\n\", object->toJSONString().ascii().data());\n")
+ validator_writer.newline("}\n")
+
+ if domain_guard:
+ domain_guard.generate_close(validator_writer)
+
+ validator_writer.newline("\n\n")
+
+ if is_open_type:
+ cpp_writer = generate_context.cpp_writer
+ writer.append("\n")
+ writer.newline(" // Property names for type generated as open.\n")
+ for prop_data in resolve_data.main_properties + resolve_data.optional_properties:
+ prop_name = prop_data.p["name"]
+ prop_field_name = Capitalizer.lower_camel_case_to_upper(prop_name)
+ writer.newline(" static const char* %s;\n" % (prop_field_name))
+ cpp_writer.newline("const char* %s%s::%s = \"%s\";\n" % (helper.full_name_prefix_for_impl, class_name, prop_field_name, prop_name))
+
+
+ writer.newline("};\n\n")
+
+ @staticmethod
+ def generate_forward_declaration(writer):
+ class_name = fixed_type_name.class_name
+ writer.newline("class ")
+ writer.append(class_name)
+ writer.append(";\n")
+
+ @staticmethod
+ def register_use(forward_listener):
+ helper.add_to_forward_listener(forward_listener)
+
+ @staticmethod
+ def get_generate_pass_id():
+ return TypeBuilderPass.MAIN
+
+ return CodeGenerator
+
+ @staticmethod
+ def get_validator_call_text():
+ return helper.full_name_prefix_for_use + fixed_type_name.class_name + "::assertCorrectValue"
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return helper.full_name_prefix_for_use + fixed_type_name.class_name
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.Object
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.RefPtrBased(helper.full_name_prefix_for_use + fixed_type_name.class_name)
+
+ class AdHocTypeContextImpl:
+ def __init__(self, property_name, class_name, resolve_context, ad_hoc_type_list, parent_full_name_prefix):
+ self.property_name = property_name
+ self.class_name = class_name
+ self.resolve_context = resolve_context
+ self.ad_hoc_type_list = ad_hoc_type_list
+ self.container_full_name_prefix = parent_full_name_prefix + class_name + "::"
+ self.container_relative_name_prefix = ""
+
+ def get_type_name_fix(self):
+ class NameFix:
+ class_name = Capitalizer.lower_camel_case_to_upper(self.property_name)
+
+ @staticmethod
+ def output_comment(writer):
+ writer.newline("// Named after property name '%s' while generating %s.\n" % (self.property_name, self.class_name))
+
+ return NameFix
+
+ def add_type(self, binding):
+ self.ad_hoc_type_list.append(binding)
+
+ return ClassBinding
+ else:
+
+ class PlainObjectBinding:
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ pass
+
+ @staticmethod
+ def request_user_runtime_cast(request):
+ pass
+
+ @staticmethod
+ def request_internal_runtime_cast():
+ RawTypes.Object.request_raw_internal_runtime_cast()
+
+ @staticmethod
+ def get_code_generator():
+ pass
+
+ @staticmethod
+ def get_validator_call_text():
+ return "RuntimeCastHelper::assertType<InspectorValue::TypeObject>"
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return cls.reduce_to_raw_type().get_array_item_raw_c_type_text()
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.Object
+
+ @staticmethod
+ def get_type_model():
+ return TypeModel.Object
+
+ return PlainObjectBinding
+ elif json_typable["type"] == "array":
+ if "items" in json_typable:
+
+ ad_hoc_types = []
+
+ class AdHocTypeContext:
+ container_full_name_prefix = "<not yet defined>"
+ container_relative_name_prefix = ""
+
+ @staticmethod
+ def get_type_name_fix():
+ return fixed_type_name
+
+ @staticmethod
+ def add_type(binding):
+ ad_hoc_types.append(binding)
+
+ item_binding = resolve_param_type(json_typable["items"], context_domain_name, AdHocTypeContext)
+
+ class ArrayBinding:
+ resolve_data_ = None
+ need_internal_runtime_cast_ = False
+
+ @classmethod
+ def resolve_inner(cls, resolve_context):
+ if cls.resolve_data_:
+ return
+
+ class ResolveData:
+ item_type_binding = item_binding
+ ad_hoc_type_list = ad_hoc_types
+
+ cls.resolve_data_ = ResolveData
+
+ for t in ad_hoc_types:
+ t.resolve_inner(resolve_context)
+
+ @classmethod
+ def request_user_runtime_cast(cls, request):
+ raise Exception("Not implemented yet")
+
+ @classmethod
+ def request_internal_runtime_cast(cls):
+ if cls.need_internal_runtime_cast_:
+ return
+ cls.need_internal_runtime_cast_ = True
+ cls.resolve_data_.item_type_binding.request_internal_runtime_cast()
+
+ @classmethod
+ def get_code_generator(array_binding_cls):
+
+ class CodeGenerator:
+ @staticmethod
+ def generate_type_builder(writer, generate_context):
+ ad_hoc_type_writer = writer
+
+ resolve_data = array_binding_cls.resolve_data_
+
+ for ad_hoc_type in resolve_data.ad_hoc_type_list:
+ code_generator = ad_hoc_type.get_code_generator()
+ if code_generator:
+ code_generator.generate_type_builder(ad_hoc_type_writer, generate_context)
+
+ @staticmethod
+ def generate_forward_declaration(writer):
+ pass
+
+ @staticmethod
+ def register_use(forward_listener):
+ item_code_generator = item_binding.get_code_generator()
+ if item_code_generator:
+ item_code_generator.register_use(forward_listener)
+
+ @staticmethod
+ def get_generate_pass_id():
+ return TypeBuilderPass.MAIN
+
+ return CodeGenerator
+
+ @classmethod
+ def get_validator_call_text(cls):
+ return cls.get_array_item_c_type_text() + "::assertCorrectValue"
+
+ @classmethod
+ def get_array_item_c_type_text(cls):
+ return replace_right_shift("Inspector::TypeBuilder::Array<%s>" % cls.resolve_data_.item_type_binding.get_array_item_c_type_text())
+
+ @staticmethod
+ def get_setter_value_expression_pattern():
+ return None
+
+ @staticmethod
+ def reduce_to_raw_type():
+ return RawTypes.Array
+
+ @classmethod
+ def get_type_model(cls):
+ return TypeModel.RefPtrBased(cls.get_array_item_c_type_text())
+
+ return ArrayBinding
+ else:
+ # Fall-through to raw type.
+ pass
+
+ raw_type = RawTypes.get(json_typable["type"])
+
+ return RawTypeBinding(raw_type)
+
+
+class RawTypeBinding:
+ def __init__(self, raw_type):
+ self.raw_type_ = raw_type
+
+ def resolve_inner(self, resolve_context):
+ pass
+
+ def request_user_runtime_cast(self, request):
+ raise Exception("Unsupported")
+
+ def request_internal_runtime_cast(self):
+ self.raw_type_.request_raw_internal_runtime_cast()
+
+ def get_code_generator(self):
+ return None
+
+ def get_validator_call_text(self):
+ return self.raw_type_.get_raw_validator_call_text()
+
+ def get_array_item_c_type_text(self):
+ return self.raw_type_.get_array_item_raw_c_type_text()
+
+ def get_setter_value_expression_pattern(self):
+ return None
+
+ def reduce_to_raw_type(self):
+ return self.raw_type_
+
+ def get_type_model(self):
+ return self.raw_type_.get_raw_type_model()
+
+
+class TypeData(object):
+ def __init__(self, json_type, json_domain, domain_data):
+ self.json_type_ = json_type
+ self.json_domain_ = json_domain
+ self.domain_data_ = domain_data
+
+ if "type" not in json_type:
+ raise Exception("Unknown type")
+
+ json_type_name = json_type["type"]
+ self.raw_type_ = RawTypes.get(json_type_name)
+ self.binding_being_resolved_ = False
+ self.binding_ = None
+
+ def get_raw_type(self):
+ return self.raw_type_
+
+ def get_binding(self):
+ if not self.binding_:
+ if self.binding_being_resolved_:
+ raise Exception("Type %s is already being resolved" % self.json_type_["type"])
+ # Resolve only lazily, because resolving one named type may require resolving some other named type.
+ self.binding_being_resolved_ = True
+ try:
+ self.binding_ = TypeBindings.create_named_type_declaration(self.json_type_, self.json_domain_["domain"], self)
+ finally:
+ self.binding_being_resolved_ = False
+
+ return self.binding_
+
+ def get_json_type(self):
+ return self.json_type_
+
+ def get_name(self):
+ return self.json_type_["id"]
+
+ def get_domain_name(self):
+ return self.json_domain_["domain"]
+
+
+class DomainData:
+ def __init__(self, json_domain):
+ self.json_domain = json_domain
+ self.types_ = []
+
+ def add_type(self, type_data):
+ self.types_.append(type_data)
+
+ def name(self):
+ return self.json_domain["domain"]
+
+ def types(self):
+ return self.types_
+
+
+class TypeMap:
+ def __init__(self, api, dependency_api):
+ self.map_ = {}
+ self.domains_ = []
+ self.domains_to_generate_ = []
+ for json_domain in api["domains"]:
+ self.add_domain(json_domain, True)
+ for json_domain in dependency_api["domains"]:
+ self.add_domain(json_domain, False)
+
+ def add_domain(self, json_domain, should_generate):
+ domain_name = json_domain["domain"]
+
+ domain_map = {}
+ self.map_[domain_name] = domain_map
+
+ domain_data = DomainData(json_domain)
+ self.domains_.append(domain_data)
+
+ if should_generate:
+ # FIXME: The order of types should not matter. The generated code should work regardless of the order of types.
+ if domain_name == "Page":
+ self.domains_to_generate_.insert(0, domain_data)
+ else:
+ self.domains_to_generate_.append(domain_data)
+
+ if "types" in json_domain:
+ for json_type in json_domain["types"]:
+ type_name = json_type["id"]
+ type_data = TypeData(json_type, json_domain, domain_data)
+ domain_map[type_name] = type_data
+ domain_data.add_type(type_data)
+
+ def domains(self):
+ return self.domains_
+
+ def domains_to_generate(self):
+ return self.domains_to_generate_
+
+ def get(self, domain_name, type_name):
+ return self.map_[domain_name][type_name]
+
+
+def resolve_param_type(json_parameter, scope_domain_name, ad_hoc_type_context):
+ if "$ref" in json_parameter:
+ json_ref = json_parameter["$ref"]
+ type_data = get_ref_data(json_ref, scope_domain_name)
+ return type_data.get_binding()
+ elif "type" in json_parameter:
+ result = TypeBindings.create_ad_hoc_type_declaration(json_parameter, scope_domain_name, ad_hoc_type_context)
+ ad_hoc_type_context.add_type(result)
+ return result
+ else:
+ raise Exception("Unknown type")
+
+
+def resolve_param_raw_type(json_parameter, scope_domain_name):
+ if "$ref" in json_parameter:
+ json_ref = json_parameter["$ref"]
+ type_data = get_ref_data(json_ref, scope_domain_name)
+ return type_data.get_raw_type()
+ elif "type" in json_parameter:
+ json_type = json_parameter["type"]
+ return RawTypes.get(json_type)
+ else:
+ raise Exception("Unknown type")
+
+
+def get_ref_data(json_ref, scope_domain_name):
+ dot_pos = json_ref.find(".")
+ if dot_pos == -1:
+ domain_name = scope_domain_name
+ type_name = json_ref
+ else:
+ domain_name = json_ref[:dot_pos]
+ type_name = json_ref[dot_pos + 1:]
+
+ return type_map.get(domain_name, type_name)
+
+
+input_file = open(input_json_filename, "r")
+json_string = input_file.read()
+json_api = json.loads(json_string)
+input_file.close()
+if not "domains" in json_api:
+ json_api = {"domains": [json_api]}
+
+dependency_api = {"domains": []}
+for dependency_json_filename in dependency_json_filenames:
+ dependency_input_file = open(dependency_json_filename, "r")
+ dependency_json_string = dependency_input_file.read()
+ dependency_json_api = json.loads(dependency_json_string)
+ dependency_input_file.close()
+ if not "domains" in dependency_json_api:
+ dependency_json_api = {"domains": [dependency_json_api]}
+ dependency_api["domains"] += dependency_json_api["domains"]
+
+
+class Templates:
+ def get_this_script_path_(absolute_path):
+ absolute_path = os.path.abspath(absolute_path)
+ components = []
+
+ def fill_recursive(path_part, depth):
+ if depth <= 0 or path_part == '/':
+ return
+ fill_recursive(os.path.dirname(path_part), depth - 1)
+ components.append(os.path.basename(path_part))
+
+ # Typical path is /Source/WebCore/inspector/CodeGeneratorInspector.py
+ # Let's take 4 components from the real path then.
+ fill_recursive(absolute_path, 4)
+
+ return "/".join(components)
+
+ file_header_ = ("// File is generated by %s\n\n" % get_this_script_path_(sys.argv[0]) +
+"""// Copyright (c) 2013 Apple Inc. All Rights Reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+""")
+
+ frontend_domain_class = string.Template(CodeGeneratorInspectorStrings.frontend_domain_class)
+ backend_dispatcher_constructor = string.Template(CodeGeneratorInspectorStrings.backend_dispatcher_constructor)
+ backend_dispatcher_dispatch_method = string.Template(CodeGeneratorInspectorStrings.backend_dispatcher_dispatch_method)
+ backend_dispatcher_dispatch_method_simple = string.Template(CodeGeneratorInspectorStrings.backend_dispatcher_dispatch_method_simple)
+ backend_method = string.Template(CodeGeneratorInspectorStrings.backend_method)
+ frontend_method = string.Template(CodeGeneratorInspectorStrings.frontend_method)
+ callback_method = string.Template(CodeGeneratorInspectorStrings.callback_method)
+ frontend_h = string.Template(file_header_ + CodeGeneratorInspectorStrings.frontend_h)
+ backend_h = string.Template(file_header_ + CodeGeneratorInspectorStrings.backend_h)
+ backend_cpp = string.Template(file_header_ + CodeGeneratorInspectorStrings.backend_cpp)
+ frontend_cpp = string.Template(file_header_ + CodeGeneratorInspectorStrings.frontend_cpp)
+ typebuilder_h = string.Template(file_header_ + CodeGeneratorInspectorStrings.typebuilder_h)
+ typebuilder_cpp = string.Template(file_header_ + CodeGeneratorInspectorStrings.typebuilder_cpp)
+ backend_js = string.Template(file_header_ + CodeGeneratorInspectorStrings.backend_js)
+ param_container_access_code = CodeGeneratorInspectorStrings.param_container_access_code
+
+
+
+
+
+type_map = TypeMap(json_api, dependency_api)
+
+
+class NeedRuntimeCastRequest:
+ def __init__(self):
+ self.ack_ = None
+
+ def acknowledge(self):
+ self.ack_ = True
+
+ def is_acknowledged(self):
+ return self.ack_
+
+
+def resolve_all_types():
+ runtime_cast_generate_requests = {}
+ for type_name in TYPES_WITH_RUNTIME_CAST_SET:
+ runtime_cast_generate_requests[type_name] = NeedRuntimeCastRequest()
+
+ class ForwardListener:
+ type_data_set = set()
+ already_declared_set = set()
+
+ @classmethod
+ def add_type_data(cls, type_data):
+ if type_data not in cls.already_declared_set:
+ cls.type_data_set.add(type_data)
+
+ class ResolveContext:
+ forward_listener = ForwardListener
+
+ for domain_data in type_map.domains():
+ for type_data in domain_data.types():
+ binding = type_data.get_binding()
+ binding.resolve_inner(ResolveContext)
+ # Do not generate forwards for this type any longer.
+ ForwardListener.already_declared_set.add(type_data)
+
+ for domain_data in type_map.domains():
+ for type_data in domain_data.types():
+ full_type_name = "%s.%s" % (type_data.get_domain_name(), type_data.get_name())
+ request = runtime_cast_generate_requests.pop(full_type_name, None)
+ binding = type_data.get_binding()
+ if request:
+ binding.request_user_runtime_cast(request)
+
+ if request and not request.is_acknowledged():
+ raise Exception("Failed to generate runtimeCast in " + full_type_name)
+
+ # FIXME: This assumes all the domains are processed at once. Change this verification
+ # to only verify runtime casts for the domains being generated.
+ # if verification:
+ # for full_type_name in runtime_cast_generate_requests:
+ # raise Exception("Failed to generate runtimeCast. Type " + full_type_name + " not found")
+
+ return ForwardListener
+
+
+global_forward_listener = resolve_all_types()
+
+
+def get_annotated_type_text(raw_type, annotated_type):
+ if annotated_type != raw_type:
+ return "/*%s*/ %s" % (annotated_type, raw_type)
+ else:
+ return raw_type
+
+
+def format_setter_value_expression(param_type_binding, value_ref):
+ pattern = param_type_binding.get_setter_value_expression_pattern()
+ if pattern:
+ return pattern % (INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["prefix"], value_ref)
+ else:
+ return value_ref
+
+
+class Generator:
+ frontend_domain_class_lines = []
+
+ backend_method_implementation_list = []
+ frontend_method_list = []
+ backend_js_domain_initializer_list = []
+
+ backend_handler_interface_list = []
+ backend_handler_implementation_list = []
+ backend_dispatcher_interface_list = []
+ type_builder_fragments = []
+ type_builder_forwards = []
+ validator_impl_list = []
+ type_builder_impl_list = []
+
+
+ @staticmethod
+ def go():
+ Generator.process_types(type_map)
+
+ first_cycle_guardable_list_list = [
+ Generator.backend_method_implementation_list,
+ Generator.backend_handler_interface_list,
+ Generator.backend_handler_implementation_list,
+ Generator.backend_dispatcher_interface_list]
+
+ for json_domain in json_api["domains"]:
+ domain_name = json_domain["domain"]
+ domain_name_lower = domain_name.lower()
+
+ domain_fixes = DomainNameFixes.get_fixed_data(domain_name)
+
+ domain_guard = domain_fixes.get_guard()
+
+ if domain_guard:
+ for l in first_cycle_guardable_list_list:
+ domain_guard.generate_open(l)
+
+ frontend_method_declaration_lines = []
+
+ if ("commands" in json_domain or "events" in json_domain):
+ Generator.backend_js_domain_initializer_list.append("// %s.\n" % domain_name)
+ if not domain_fixes.skip_js_bind:
+ Generator.backend_js_domain_initializer_list.append("InspectorBackend.register%sDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, \"%s\");\n" % (domain_name, domain_name))
+
+ if "types" in json_domain:
+ for json_type in json_domain["types"]:
+ if "type" in json_type and json_type["type"] == "string" and "enum" in json_type:
+ enum_name = "%s.%s" % (domain_name, json_type["id"])
+ Generator.process_enum(json_type, enum_name)
+ elif json_type["type"] == "object":
+ if "properties" in json_type:
+ for json_property in json_type["properties"]:
+ if "type" in json_property and json_property["type"] == "string" and "enum" in json_property:
+ enum_name = "%s.%s%s" % (domain_name, json_type["id"], to_title_case(json_property["name"]))
+ Generator.process_enum(json_property, enum_name)
+
+ if "events" in json_domain:
+ if domain_guard:
+ domain_guard.generate_open(Generator.frontend_method_list)
+ domain_guard.generate_open(Generator.frontend_domain_class_lines)
+
+ for json_event in json_domain["events"]:
+ Generator.process_event(json_event, domain_name, frontend_method_declaration_lines)
+
+ Generator.frontend_domain_class_lines.append(Templates.frontend_domain_class.substitute(None,
+ exportMacro=INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["export_macro"],
+ domainClassName="Inspector%sFrontendDispatcher" % domain_name,
+ frontendDomainMethodDeclarations="".join(flatten_list(frontend_method_declaration_lines))))
+
+ if domain_guard:
+ domain_guard.generate_close(Generator.frontend_method_list)
+ domain_guard.generate_close(Generator.frontend_domain_class_lines)
+
+ dispatcher_name = "Inspector" + Capitalizer.lower_camel_case_to_upper(domain_name) + "BackendDispatcher"
+ agent_interface_name = dispatcher_name + "Handler"
+
+ if "commands" in json_domain:
+ Generator.backend_dispatcher_interface_list.append("class %s %s final : public Inspector::InspectorSupplementalBackendDispatcher {\n" % (INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["export_macro"], dispatcher_name))
+ Generator.backend_dispatcher_interface_list.append("public:\n")
+ Generator.backend_dispatcher_interface_list.append(" static PassRefPtr<%s> create(Inspector::InspectorBackendDispatcher*, %s*);\n" % (dispatcher_name, agent_interface_name))
+ Generator.backend_dispatcher_interface_list.append(" virtual void dispatch(long callId, const String& method, PassRefPtr<Inspector::InspectorObject> message) override;\n")
+ Generator.backend_dispatcher_interface_list.append("private:\n")
+
+ Generator.backend_handler_interface_list.append("class %s %s {\n" % (INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["export_macro"], agent_interface_name))
+ Generator.backend_handler_interface_list.append("public:\n")
+
+ backend_method_count = len(Generator.backend_method_implementation_list)
+
+ dispatcher_if_chain = []
+ dispatcher_commands_list = []
+ for json_command in json_domain["commands"]:
+ Generator.process_command(json_command, domain_name, agent_interface_name, dispatcher_name, dispatcher_if_chain, dispatcher_commands_list)
+
+ Generator.backend_handler_interface_list.append("protected:\n")
+ Generator.backend_handler_interface_list.append(" virtual ~%s();\n" % agent_interface_name)
+ Generator.backend_handler_interface_list.append("};\n\n")
+
+ Generator.backend_handler_implementation_list.append("%s::~%s() { }\n" % (agent_interface_name, agent_interface_name))
+
+ Generator.backend_dispatcher_interface_list.append("private:\n")
+ Generator.backend_dispatcher_interface_list.append(" %s(Inspector::InspectorBackendDispatcher*, %s*);\n" % (dispatcher_name, agent_interface_name))
+ Generator.backend_dispatcher_interface_list.append(" %s* m_agent;\n" % agent_interface_name)
+ Generator.backend_dispatcher_interface_list.append("};\n\n")
+
+ Generator.backend_method_implementation_list.insert(backend_method_count, Templates.backend_dispatcher_constructor.substitute(None,
+ domainName=domain_name,
+ dispatcherName=dispatcher_name,
+ agentName=agent_interface_name))
+
+ if len(json_domain["commands"]) <= 5:
+ Generator.backend_method_implementation_list.insert(backend_method_count + 1, Templates.backend_dispatcher_dispatch_method_simple.substitute(None,
+ domainName=domain_name,
+ dispatcherName=dispatcher_name,
+ ifChain="\n".join(dispatcher_if_chain)))
+ else:
+ Generator.backend_method_implementation_list.insert(backend_method_count + 1, Templates.backend_dispatcher_dispatch_method.substitute(None,
+ domainName=domain_name,
+ dispatcherName=dispatcher_name,
+ dispatcherCommands="\n".join(dispatcher_commands_list)))
+
+ if domain_guard:
+ for l in reversed(first_cycle_guardable_list_list):
+ domain_guard.generate_close(l)
+ Generator.backend_js_domain_initializer_list.append("\n")
+
+ @staticmethod
+ def process_enum(json_enum, enum_name):
+ enum_members = []
+ for member in json_enum["enum"]:
+ enum_members.append("%s: \"%s\"" % (fix_camel_case(member), member))
+
+ Generator.backend_js_domain_initializer_list.append("InspectorBackend.registerEnum(\"%s\", {%s});\n" % (
+ enum_name, ", ".join(enum_members)))
+
+ @staticmethod
+ def process_event(json_event, domain_name, frontend_method_declaration_lines):
+ event_name = json_event["name"]
+
+ ad_hoc_type_output = []
+ frontend_method_declaration_lines.append(ad_hoc_type_output)
+ ad_hoc_type_writer = Writer(ad_hoc_type_output, " ")
+
+ decl_parameter_list = []
+
+ json_parameters = json_event.get("parameters")
+ Generator.generate_send_method(json_parameters, event_name, domain_name, ad_hoc_type_writer,
+ decl_parameter_list,
+ Generator.EventMethodStructTemplate,
+ Generator.frontend_method_list, Templates.frontend_method, {"eventName": event_name})
+
+ backend_js_event_param_list = []
+ if json_parameters:
+ for parameter in json_parameters:
+ parameter_name = parameter["name"]
+ backend_js_event_param_list.append("\"%s\"" % parameter_name)
+
+ frontend_method_declaration_lines.append(
+ " void %s(%s);\n" % (event_name, ", ".join(decl_parameter_list)))
+
+ Generator.backend_js_domain_initializer_list.append("InspectorBackend.registerEvent(\"%s.%s\", [%s]);\n" % (
+ domain_name, event_name, ", ".join(backend_js_event_param_list)))
+
+ class EventMethodStructTemplate:
+ @staticmethod
+ def append_prolog(line_list):
+ line_list.append(" RefPtr<InspectorObject> paramsObject = InspectorObject::create();\n")
+
+ @staticmethod
+ def append_epilog(line_list):
+ line_list.append(" jsonMessage->setObject(ASCIILiteral(\"params\"), paramsObject);\n")
+
+ container_name = "paramsObject"
+
+ @staticmethod
+ def process_command(json_command, domain_name, agent_interface_name, dispatcher_name, dispatcher_if_chain, dispatcher_commands_list):
+ json_command_name = json_command["name"]
+
+ ad_hoc_type_output = []
+ Generator.backend_handler_interface_list.append(ad_hoc_type_output)
+ ad_hoc_type_writer = Writer(ad_hoc_type_output, " ")
+
+ Generator.backend_dispatcher_interface_list.append(" void %s(long callId, const Inspector::InspectorObject& message);\n" % json_command_name)
+
+ Generator.backend_handler_interface_list.append(" virtual void %s(ErrorString*" % json_command_name)
+
+ if not dispatcher_if_chain:
+ dispatcher_if_chain.append(" if (method == \"%s\")" % json_command_name)
+ else:
+ dispatcher_if_chain.append(" else if (method == \"%s\")" % json_command_name)
+ dispatcher_if_chain.append(" %s(callId, *message.get());" % json_command_name)
+ dispatcher_commands_list.append(" { \"%s\", &%s::%s }," % (json_command_name, dispatcher_name, json_command_name))
+
+ method_in_params_handling = []
+ method_dispatch_handling = []
+ method_out_params_handling = []
+ method_ending_handling = []
+ method_request_message_param_name = ""
+ agent_call_param_list = []
+ js_parameters_text = ""
+ if "parameters" in json_command:
+ json_params = json_command["parameters"]
+ method_request_message_param_name = " message"
+ method_in_params_handling.append(" RefPtr<InspectorArray> protocolErrors = InspectorArray::create();\n")
+ method_in_params_handling.append(" RefPtr<InspectorObject> paramsContainer = message.getObject(ASCIILiteral(\"params\"));\n")
+ method_in_params_handling.append(" InspectorObject* paramsContainerPtr = paramsContainer.get();\n")
+ method_in_params_handling.append(" InspectorArray* protocolErrorsPtr = protocolErrors.get();\n")
+ js_param_list = []
+
+ for json_parameter in json_params:
+ json_param_name = json_parameter["name"]
+ param_raw_type = resolve_param_raw_type(json_parameter, domain_name)
+
+ getter_name = param_raw_type.get_getter_name()
+
+ optional = json_parameter.get("optional")
+
+ non_optional_type_model = param_raw_type.get_raw_type_model()
+ if optional:
+ type_model = non_optional_type_model.get_optional()
+ else:
+ type_model = non_optional_type_model
+
+ if optional:
+ code = (" bool %s_valueFound = false;\n"
+ " %s in_%s = InspectorBackendDispatcher::get%s(paramsContainerPtr, ASCIILiteral(\"%s\"), &%s_valueFound, protocolErrorsPtr);\n" %
+ (json_param_name, non_optional_type_model.get_command_return_pass_model().get_return_var_type(), json_param_name, getter_name, json_param_name, json_param_name))
+ param = ", %s_valueFound ? &in_%s : nullptr" % (json_param_name, json_param_name)
+ # FIXME: pass optional refptr-values as PassRefPtr
+ formal_param_type_pattern = "const %s*"
+ else:
+ code = (" %s in_%s = InspectorBackendDispatcher::get%s(paramsContainerPtr, ASCIILiteral(\"%s\"), nullptr, protocolErrorsPtr);\n" %
+ (non_optional_type_model.get_command_return_pass_model().get_return_var_type(), json_param_name, getter_name, json_param_name))
+ param = ", in_%s" % json_param_name
+ # FIXME: pass not-optional refptr-values as NonNullPassRefPtr
+ if param_raw_type.is_heavy_value():
+ formal_param_type_pattern = "const %s&"
+ else:
+ formal_param_type_pattern = "%s"
+
+ method_in_params_handling.append(code)
+ agent_call_param_list.append(param)
+ Generator.backend_handler_interface_list.append(", %s in_%s" % (formal_param_type_pattern % non_optional_type_model.get_command_return_pass_model().get_return_var_type(), json_param_name))
+
+ js_bind_type = param_raw_type.get_js_bind_type()
+ js_param_text = "{\"name\": \"%s\", \"type\": \"%s\", \"optional\": %s}" % (
+ json_param_name,
+ js_bind_type,
+ ("true" if ("optional" in json_parameter and json_parameter["optional"]) else "false"))
+
+ js_param_list.append(js_param_text)
+
+ method_in_params_handling.append(" if (protocolErrors->length()) {\n")
+ method_in_params_handling.append(" String errorMessage = String::format(\"Some arguments of method '%%s' can't be processed\", \"%s.%s\");\n" % (domain_name, json_command_name))
+ method_in_params_handling.append(" m_backendDispatcher->reportProtocolError(&callId, InspectorBackendDispatcher::InvalidParams, errorMessage, protocolErrors.release());\n")
+ method_in_params_handling.append(" return;\n")
+ method_in_params_handling.append(" }\n")
+ method_in_params_handling.append("\n")
+
+ js_parameters_text = ", ".join(js_param_list)
+
+ method_dispatch_handling.append(" ErrorString error;\n")
+ method_dispatch_handling.append(" RefPtr<InspectorObject> result = InspectorObject::create();\n")
+
+ if json_command.get("async") == True:
+ callback_name = Capitalizer.lower_camel_case_to_upper(json_command_name) + "Callback"
+
+ callback_output = []
+ callback_writer = Writer(callback_output, ad_hoc_type_writer.get_indent())
+
+ decl_parameter_list = []
+ Generator.generate_send_method(json_command.get("returns"), json_command_name, domain_name, ad_hoc_type_writer,
+ decl_parameter_list,
+ Generator.CallbackMethodStructTemplate,
+ Generator.backend_method_implementation_list, Templates.callback_method,
+ {"callbackName": callback_name, "handlerName": agent_interface_name})
+
+ callback_writer.newline("class " + callback_name + " : public Inspector::InspectorBackendDispatcher::CallbackBase {\n")
+ callback_writer.newline("public:\n")
+ callback_writer.newline(" " + callback_name + "(PassRefPtr<Inspector::InspectorBackendDispatcher>, int id);\n")
+ callback_writer.newline(" void sendSuccess(" + ", ".join(decl_parameter_list) + ");\n")
+ callback_writer.newline("};\n")
+
+ ad_hoc_type_output.append(callback_output)
+
+ method_dispatch_handling.append(" RefPtr<%s::%s> callback = adoptRef(new %s::%s(m_backendDispatcher,callId));\n" % (agent_interface_name, callback_name, agent_interface_name, callback_name))
+ method_ending_handling.append(" if (error.length()) {\n")
+ method_ending_handling.append(" callback->disable();\n")
+ method_ending_handling.append(" m_backendDispatcher->reportProtocolError(&callId, Inspector::InspectorBackendDispatcher::ServerError, error);\n")
+ method_ending_handling.append(" return;\n")
+ method_ending_handling.append(" }")
+
+ agent_call_param_list.append(", callback")
+ Generator.backend_handler_interface_list.append(", PassRefPtr<%s> callback" % callback_name)
+ elif "returns" in json_command:
+ has_multiple_returns = len(json_command["returns"]) > 1
+ if has_multiple_returns:
+ method_out_params_handling.append(" if (!error.length()) {\n")
+ else:
+ method_out_params_handling.append(" if (!error.length())\n")
+
+ for json_return in json_command["returns"]:
+
+ json_return_name = json_return["name"]
+
+ optional = bool(json_return.get("optional"))
+
+ return_type_binding = Generator.resolve_type_and_generate_ad_hoc(json_return, json_command_name, domain_name, ad_hoc_type_writer, agent_interface_name + "::")
+
+ raw_type = return_type_binding.reduce_to_raw_type()
+ setter_type = raw_type.get_setter_name()
+ initializer = raw_type.get_c_initializer()
+
+ type_model = return_type_binding.get_type_model()
+ if optional:
+ type_model = type_model.get_optional()
+
+ code = " %s out_%s;\n" % (type_model.get_command_return_pass_model().get_return_var_type(), json_return_name)
+ param = ", %sout_%s" % (type_model.get_command_return_pass_model().get_output_argument_prefix(), json_return_name)
+ var_name = "out_%s" % json_return_name
+ setter_argument = type_model.get_command_return_pass_model().get_output_to_raw_expression() % var_name
+ if return_type_binding.get_setter_value_expression_pattern():
+ setter_argument = return_type_binding.get_setter_value_expression_pattern() % (INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["prefix"], setter_argument)
+
+ cook = " result->set%s(ASCIILiteral(\"%s\"), %s);\n" % (setter_type, json_return_name, setter_argument)
+
+ set_condition_pattern = type_model.get_command_return_pass_model().get_set_return_condition()
+ if set_condition_pattern:
+ cook = (" if (%s)\n " % (set_condition_pattern % var_name)) + cook
+ annotated_type = type_model.get_command_return_pass_model().get_output_parameter_type()
+
+ param_name = "out_%s" % json_return_name
+ if optional:
+ param_name = "opt_" + param_name
+
+ Generator.backend_handler_interface_list.append(", %s %s" % (annotated_type, param_name))
+ method_out_params_handling.append(cook)
+ method_dispatch_handling.append(code)
+
+ agent_call_param_list.append(param)
+
+ if has_multiple_returns:
+ method_out_params_handling.append(" }\n")
+ method_out_params_handling.append("\n")
+
+ method_dispatch_handling.append(" m_agent->%s(&error%s);\n" % (json_command_name, "".join(agent_call_param_list)))
+ method_dispatch_handling.append("\n")
+
+ if not method_ending_handling:
+ method_ending_handling.append(" m_backendDispatcher->sendResponse(callId, result.release(), error);")
+
+ backend_js_reply_param_list = []
+ if "returns" in json_command:
+ for json_return in json_command["returns"]:
+ json_return_name = json_return["name"]
+ backend_js_reply_param_list.append("\"%s\"" % json_return_name)
+
+ js_reply_list = "[%s]" % ", ".join(backend_js_reply_param_list)
+
+ Generator.backend_method_implementation_list.append(Templates.backend_method.substitute(None,
+ dispatcherName=dispatcher_name,
+ methodName=json_command_name,
+ requestMessageObject=method_request_message_param_name,
+ methodInParametersHandling="".join(method_in_params_handling),
+ methodDispatchHandling="".join(method_dispatch_handling),
+ methodOutParametersHandling="".join(method_out_params_handling),
+ methodEndingHandling="".join(method_ending_handling)))
+
+ Generator.backend_js_domain_initializer_list.append("InspectorBackend.registerCommand(\"%s.%s\", [%s], %s);\n" % (domain_name, json_command_name, js_parameters_text, js_reply_list))
+ Generator.backend_handler_interface_list.append(") = 0;\n")
+
+ class CallbackMethodStructTemplate:
+ @staticmethod
+ def append_prolog(line_list):
+ pass
+
+ @staticmethod
+ def append_epilog(line_list):
+ pass
+
+ container_name = "jsonMessage"
+
+ # Generates common code for event sending and callback response data sending.
+ @staticmethod
+ def generate_send_method(parameters, event_name, domain_name, ad_hoc_type_writer, decl_parameter_list,
+ method_struct_template,
+ generator_method_list, method_template, template_params):
+ method_line_list = []
+ if parameters:
+ method_struct_template.append_prolog(method_line_list)
+ for json_parameter in parameters:
+ parameter_name = json_parameter["name"]
+
+ param_type_binding = Generator.resolve_type_and_generate_ad_hoc(json_parameter, event_name, domain_name, ad_hoc_type_writer, "")
+
+ raw_type = param_type_binding.reduce_to_raw_type()
+ raw_type_binding = RawTypeBinding(raw_type)
+
+ optional = bool(json_parameter.get("optional"))
+
+ setter_type = raw_type.get_setter_name()
+
+ type_model = param_type_binding.get_type_model()
+ raw_type_model = raw_type_binding.get_type_model()
+ if optional:
+ type_model = type_model.get_optional()
+ raw_type_model = raw_type_model.get_optional()
+
+ annotated_type = type_model.get_input_param_type_text()
+ mode_type_binding = param_type_binding
+
+ decl_parameter_list.append("%s %s" % (annotated_type, parameter_name))
+
+ setter_argument = raw_type_model.get_event_setter_expression_pattern() % parameter_name
+ if mode_type_binding.get_setter_value_expression_pattern():
+ setter_argument = mode_type_binding.get_setter_value_expression_pattern() % (INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["prefix"], setter_argument)
+
+ setter_code = " %s->set%s(ASCIILiteral(\"%s\"), %s);\n" % (method_struct_template.container_name, setter_type, parameter_name, setter_argument)
+ if optional:
+ setter_code = (" if (%s)\n " % parameter_name) + setter_code
+ method_line_list.append(setter_code)
+
+ method_struct_template.append_epilog(method_line_list)
+
+ generator_method_list.append(method_template.substitute(None,
+ domainName=domain_name,
+ parameters=", ".join(decl_parameter_list),
+ code="".join(method_line_list), **template_params))
+
+ @staticmethod
+ def resolve_type_and_generate_ad_hoc(json_param, method_name, domain_name, ad_hoc_type_writer, container_relative_name_prefix_param):
+ param_name = json_param["name"]
+ ad_hoc_type_list = []
+
+ class AdHocTypeContext:
+ container_full_name_prefix = "<not yet defined>"
+ container_relative_name_prefix = container_relative_name_prefix_param
+
+ @staticmethod
+ def get_type_name_fix():
+ class NameFix:
+ class_name = Capitalizer.lower_camel_case_to_upper(param_name)
+
+ @staticmethod
+ def output_comment(writer):
+ writer.newline("// Named after parameter '%s' while generating command/event %s.\n" % (param_name, method_name))
+
+ return NameFix
+
+ @staticmethod
+ def add_type(binding):
+ ad_hoc_type_list.append(binding)
+
+ type_binding = resolve_param_type(json_param, domain_name, AdHocTypeContext)
+
+ class InterfaceForwardListener:
+ @staticmethod
+ def add_type_data(type_data):
+ pass
+
+ class InterfaceResolveContext:
+ forward_listener = InterfaceForwardListener
+
+ for type in ad_hoc_type_list:
+ type.resolve_inner(InterfaceResolveContext)
+
+ class InterfaceGenerateContext:
+ validator_writer = "not supported in InterfaceGenerateContext"
+ cpp_writer = validator_writer
+
+ for type in ad_hoc_type_list:
+ generator = type.get_code_generator()
+ if generator:
+ generator.generate_type_builder(ad_hoc_type_writer, InterfaceGenerateContext)
+
+ return type_binding
+
+ @staticmethod
+ def process_types(type_map):
+ output = Generator.type_builder_fragments
+
+ class GenerateContext:
+ validator_writer = Writer(Generator.validator_impl_list, "")
+ cpp_writer = Writer(Generator.type_builder_impl_list, "")
+
+ def generate_all_domains_code(out, type_data_callback):
+ writer = Writer(out, "")
+ for domain_data in type_map.domains_to_generate():
+ domain_fixes = DomainNameFixes.get_fixed_data(domain_data.name())
+ domain_guard = domain_fixes.get_guard()
+
+ namespace_declared = []
+
+ def namespace_lazy_generator():
+ if not namespace_declared:
+ if domain_guard:
+ domain_guard.generate_open(out)
+ writer.newline("namespace ")
+ writer.append(domain_data.name())
+ writer.append(" {\n")
+ # What is a better way to change value from outer scope?
+ namespace_declared.append(True)
+ return writer
+
+ for type_data in domain_data.types():
+ type_data_callback(type_data, namespace_lazy_generator)
+
+ if namespace_declared:
+ writer.append("} // ")
+ writer.append(domain_data.name())
+ writer.append("\n\n")
+
+ if domain_guard:
+ domain_guard.generate_close(out)
+
+ def create_type_builder_caller(generate_pass_id):
+ def call_type_builder(type_data, writer_getter):
+ code_generator = type_data.get_binding().get_code_generator()
+ if code_generator and generate_pass_id == code_generator.get_generate_pass_id():
+ writer = writer_getter()
+
+ code_generator.generate_type_builder(writer, GenerateContext)
+ return call_type_builder
+
+ generate_all_domains_code(output, create_type_builder_caller(TypeBuilderPass.MAIN))
+
+ Generator.type_builder_forwards.append("// Forward declarations.\n")
+
+ def generate_forward_callback(type_data, writer_getter):
+ if type_data in global_forward_listener.type_data_set:
+ binding = type_data.get_binding()
+ binding.get_code_generator().generate_forward_declaration(writer_getter())
+ generate_all_domains_code(Generator.type_builder_forwards, generate_forward_callback)
+
+ Generator.type_builder_forwards.append("// End of forward declarations.\n\n")
+
+ Generator.type_builder_forwards.append("// Typedefs.\n")
+
+ generate_all_domains_code(Generator.type_builder_forwards, create_type_builder_caller(TypeBuilderPass.TYPEDEF))
+
+ Generator.type_builder_forwards.append("// End of typedefs.\n\n")
+
+
+def flatten_list(input):
+ res = []
+
+ def fill_recursive(l):
+ for item in l:
+ if isinstance(item, list):
+ fill_recursive(item)
+ else:
+ res.append(item)
+ fill_recursive(input)
+ return res
+
+
+# A writer that only updates file if it actually changed to better support incremental build.
+class SmartOutput:
+ def __init__(self, file_name):
+ self.file_name_ = file_name
+ self.output_ = ""
+
+ def write(self, text):
+ self.output_ += text
+
+ def close(self):
+ text_changed = True
+ self.output_ = self.output_.rstrip() + "\n"
+
+ try:
+ read_file = open(self.file_name_, "r")
+ old_text = read_file.read()
+ read_file.close()
+ text_changed = old_text != self.output_
+ except:
+ # Ignore, just overwrite by default
+ pass
+
+ if text_changed or write_always:
+ out_file = open(self.file_name_, "w")
+ out_file.write(self.output_)
+ out_file.close()
+
+
+Generator.go()
+
+output_file_name_prefix = INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["prefix"]
+
+backend_h_file = SmartOutput(output_header_dirname + ("/Inspector%sBackendDispatchers.h" % output_file_name_prefix))
+backend_cpp_file = SmartOutput(output_cpp_dirname + ("/Inspector%sBackendDispatchers.cpp" % output_file_name_prefix))
+
+frontend_h_file = SmartOutput(output_header_dirname + ("/Inspector%sFrontendDispatchers.h" % output_file_name_prefix))
+frontend_cpp_file = SmartOutput(output_cpp_dirname + ("/Inspector%sFrontendDispatchers.cpp" % output_file_name_prefix))
+
+typebuilder_h_file = SmartOutput(output_header_dirname + ("/Inspector%sTypeBuilders.h" % output_file_name_prefix))
+typebuilder_cpp_file = SmartOutput(output_cpp_dirname + ("/Inspector%sTypeBuilders.cpp" % output_file_name_prefix))
+
+backend_js_file = SmartOutput(output_js_dirname + ("/Inspector%sBackendCommands.js" % output_file_name_prefix))
+
+
+backend_h_file.write(Templates.backend_h.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ handlerInterfaces="".join(flatten_list(Generator.backend_handler_interface_list)),
+ dispatcherInterfaces="".join(flatten_list(Generator.backend_dispatcher_interface_list))))
+
+backend_cpp_file.write(Templates.backend_cpp.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ handlerImplementations="".join(flatten_list(Generator.backend_handler_implementation_list)),
+ methods="\n".join(Generator.backend_method_implementation_list)))
+
+frontend_h_file.write(Templates.frontend_h.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ domainClassList="".join(Generator.frontend_domain_class_lines)))
+
+frontend_cpp_file.write(Templates.frontend_cpp.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ methods="\n".join(Generator.frontend_method_list)))
+
+typebuilder_h_file.write(Templates.typebuilder_h.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ typeBuilderDependencies=INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["typebuilder_dependency"],
+ exportMacro=INSPECTOR_TYPES_GENERATOR_CONFIG_MAP[output_type]["export_macro"],
+ typeBuilders="".join(flatten_list(Generator.type_builder_fragments)),
+ forwards="".join(Generator.type_builder_forwards),
+ validatorIfdefName=VALIDATOR_IFDEF_NAME))
+
+typebuilder_cpp_file.write(Templates.typebuilder_cpp.substitute(None,
+ outputFileNamePrefix=output_file_name_prefix,
+ enumConstantValues=EnumConstants.get_enum_constant_code(),
+ implCode="".join(flatten_list(Generator.type_builder_impl_list)),
+ validatorCode="".join(flatten_list(Generator.validator_impl_list)),
+ validatorIfdefName=VALIDATOR_IFDEF_NAME))
+
+backend_js_file.write(Templates.backend_js.substitute(None,
+ domainInitializers="".join(Generator.backend_js_domain_initializer_list)))
+
+backend_h_file.close()
+backend_cpp_file.close()
+
+frontend_h_file.close()
+frontend_cpp_file.close()
+
+typebuilder_h_file.close()
+typebuilder_cpp_file.close()
+
+backend_js_file.close()
diff --git a/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspectorStrings.py b/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspectorStrings.py
new file mode 100644
index 000000000..8de2cb0fa
--- /dev/null
+++ b/Source/JavaScriptCore/inspector/scripts/CodeGeneratorInspectorStrings.py
@@ -0,0 +1,342 @@
+# Copyright (c) 2013 Google Inc. All rights reserved.
+# Copyright (c) 2013 Apple Inc. All Rights Reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * 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.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+# OWNER OR 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.
+
+# This file contains string resources for CodeGeneratorInspector.
+# Its syntax is a Python syntax subset, suitable for manual parsing.
+
+frontend_domain_class = (
+"""class ${exportMacro} ${domainClassName} {
+public:
+ ${domainClassName}(InspectorFrontendChannel* inspectorFrontendChannel) : m_inspectorFrontendChannel(inspectorFrontendChannel) { }
+${frontendDomainMethodDeclarations}private:
+ InspectorFrontendChannel* m_inspectorFrontendChannel;
+};
+
+""")
+
+backend_dispatcher_constructor = (
+"""PassRefPtr<${dispatcherName}> ${dispatcherName}::create(InspectorBackendDispatcher* backendDispatcher, ${agentName}* agent)
+{
+ return adoptRef(new ${dispatcherName}(backendDispatcher, agent));
+}
+
+${dispatcherName}::${dispatcherName}(InspectorBackendDispatcher* backendDispatcher, ${agentName}* agent)
+ : InspectorSupplementalBackendDispatcher(backendDispatcher)
+ , m_agent(agent)
+{
+ m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("${domainName}"), this);
+}
+""")
+
+backend_dispatcher_dispatch_method_simple = (
+"""void ${dispatcherName}::dispatch(long callId, const String& method, PassRefPtr<InspectorObject> message)
+{
+ Ref<${dispatcherName}> protect(*this);
+
+${ifChain}
+ else
+ m_backendDispatcher->reportProtocolError(&callId, InspectorBackendDispatcher::MethodNotFound, String("'") + "${domainName}" + '.' + method + "' was not found");
+}
+""")
+
+backend_dispatcher_dispatch_method = (
+"""void ${dispatcherName}::dispatch(long callId, const String& method, PassRefPtr<InspectorObject> message)
+{
+ Ref<${dispatcherName}> protect(*this);
+
+ typedef void (${dispatcherName}::*CallHandler)(long callId, const Inspector::InspectorObject& message);
+ typedef HashMap<String, CallHandler> DispatchMap;
+ DEFINE_STATIC_LOCAL(DispatchMap, dispatchMap, ());
+ if (dispatchMap.isEmpty()) {
+ static const struct MethodTable {
+ const char* name;
+ CallHandler handler;
+ } commands[] = {
+${dispatcherCommands}
+ };
+ size_t length = WTF_ARRAY_LENGTH(commands);
+ for (size_t i = 0; i < length; ++i)
+ dispatchMap.add(commands[i].name, commands[i].handler);
+ }
+
+ HashMap<String, CallHandler>::iterator it = dispatchMap.find(method);
+ if (it == dispatchMap.end()) {
+ m_backendDispatcher->reportProtocolError(&callId, InspectorBackendDispatcher::MethodNotFound, String("'") + "${domainName}" + '.' + method + "' was not found");
+ return;
+ }
+
+ ((*this).*it->value)(callId, *message.get());
+}
+""")
+
+backend_method = (
+"""void ${dispatcherName}::${methodName}(long callId, const InspectorObject&${requestMessageObject})
+{
+${methodInParametersHandling}${methodDispatchHandling}${methodOutParametersHandling}${methodEndingHandling}
+}
+""")
+
+frontend_method = ("""void Inspector${domainName}FrontendDispatcher::${eventName}(${parameters})
+{
+ RefPtr<InspectorObject> jsonMessage = InspectorObject::create();
+ jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("${domainName}.${eventName}"));
+${code}
+ m_inspectorFrontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
+}
+""")
+
+callback_method = (
+"""${handlerName}::${callbackName}::${callbackName}(PassRefPtr<InspectorBackendDispatcher> backendDispatcher, int id) : Inspector::InspectorBackendDispatcher::CallbackBase(backendDispatcher, id) { }
+
+void ${handlerName}::${callbackName}::sendSuccess(${parameters})
+{
+ RefPtr<InspectorObject> jsonMessage = InspectorObject::create();
+${code} sendIfActive(jsonMessage, ErrorString());
+}
+""")
+
+frontend_h = (
+"""#ifndef Inspector${outputFileNamePrefix}FrontendDispatchers_h
+#define Inspector${outputFileNamePrefix}FrontendDispatchers_h
+
+#include "Inspector${outputFileNamePrefix}TypeBuilders.h"
+#include <inspector/InspectorFrontendChannel.h>
+#include <inspector/InspectorValues.h>
+#include <wtf/PassRefPtr.h>
+#include <wtf/text/WTFString.h>
+
+namespace Inspector {
+
+#if ENABLE(INSPECTOR)
+
+${domainClassList}
+
+#endif // ENABLE(INSPECTOR)
+
+} // namespace Inspector
+
+#endif // !defined(Inspector${outputFileNamePrefix}FrontendDispatchers_h)
+""")
+
+backend_h = (
+"""#ifndef Inspector${outputFileNamePrefix}BackendDispatchers_h
+#define Inspector${outputFileNamePrefix}BackendDispatchers_h
+
+#include "Inspector${outputFileNamePrefix}TypeBuilders.h"
+#include <inspector/InspectorBackendDispatcher.h>
+#include <wtf/PassRefPtr.h>
+#include <wtf/text/WTFString.h>
+
+namespace Inspector {
+
+typedef String ErrorString;
+
+${handlerInterfaces}
+
+${dispatcherInterfaces}
+} // namespace Inspector
+
+#endif // !defined(Inspector${outputFileNamePrefix}BackendDispatchers_h)
+""")
+
+backend_cpp = (
+"""
+#include "config.h"
+#include "Inspector${outputFileNamePrefix}BackendDispatchers.h"
+
+#if ENABLE(INSPECTOR)
+
+#include <inspector/InspectorFrontendChannel.h>
+#include <inspector/InspectorValues.h>
+#include <wtf/text/CString.h>
+#include <wtf/text/WTFString.h>
+
+namespace Inspector {
+
+${handlerImplementations}
+
+${methods}
+} // namespace Inspector
+
+#endif // ENABLE(INSPECTOR)
+""")
+
+frontend_cpp = (
+"""
+
+#include "config.h"
+#include "Inspector${outputFileNamePrefix}FrontendDispatchers.h"
+
+#if ENABLE(INSPECTOR)
+
+#include <wtf/text/CString.h>
+#include <wtf/text/WTFString.h>
+
+namespace Inspector {
+
+${methods}
+
+} // namespace Inspector
+
+#endif // ENABLE(INSPECTOR)
+""")
+
+typebuilder_h = (
+"""
+#ifndef Inspector${outputFileNamePrefix}TypeBuilders_h
+#define Inspector${outputFileNamePrefix}TypeBuilders_h
+
+#if ENABLE(INSPECTOR)
+
+#include <inspector/InspectorTypeBuilder.h>
+${typeBuilderDependencies}
+#include <wtf/Assertions.h>
+#include <wtf/PassRefPtr.h>
+
+namespace Inspector {
+
+namespace TypeBuilder {
+
+${forwards}
+
+${exportMacro} String get${outputFileNamePrefix}EnumConstantValue(int code);
+
+${typeBuilders}
+} // namespace TypeBuilder
+
+} // namespace Inspector
+
+#endif // ENABLE(INSPECTOR)
+
+#endif // !defined(Inspector${outputFileNamePrefix}TypeBuilders_h)
+
+""")
+
+typebuilder_cpp = (
+"""
+
+#include "config.h"
+#include "Inspector${outputFileNamePrefix}TypeBuilders.h"
+
+#if ENABLE(INSPECTOR)
+
+#include <wtf/text/CString.h>
+
+namespace Inspector {
+
+namespace TypeBuilder {
+
+static const char* const enum_constant_values[] = {
+${enumConstantValues}};
+
+String get${outputFileNamePrefix}EnumConstantValue(int code) {
+ return enum_constant_values[code];
+}
+
+} // namespace TypeBuilder
+
+${implCode}
+
+#if ${validatorIfdefName}
+
+${validatorCode}
+
+#endif // ${validatorIfdefName}
+
+} // namespace Inspector
+
+#endif // ENABLE(INSPECTOR)
+""")
+
+backend_js = (
+"""
+
+${domainInitializers}
+""")
+
+param_container_access_code = """
+ RefPtr<InspectorObject> paramsContainer = message.getObject("params");
+ InspectorObject* paramsContainerPtr = paramsContainer.get();
+ InspectorArray* protocolErrorsPtr = protocolErrors.get();
+"""
+
+class_binding_builder_part_1 = (
+""" AllFieldsSet = %s
+ };
+
+ template<int STATE>
+ class Builder {
+ private:
+ RefPtr<Inspector::InspectorObject> m_result;
+
+ template<int STEP> Builder<STATE | STEP>& castState()
+ {
+ return *reinterpret_cast<Builder<STATE | STEP>*>(this);
+ }
+
+ Builder(PassRefPtr</*%s*/Inspector::InspectorObject> ptr)
+ {
+ COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
+ m_result = ptr;
+ }
+ friend class %s;
+ public:
+""")
+
+class_binding_builder_part_2 = ("""
+ Builder<STATE | %s>& set%s(%s value)
+ {
+ COMPILE_ASSERT(!(STATE & %s), property_%s_already_set);
+ m_result->set%s(ASCIILiteral("%s"), %s);
+ return castState<%s>();
+ }
+""")
+
+class_binding_builder_part_3 = ("""
+ operator RefPtr<%s>& ()
+ {
+ COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
+ COMPILE_ASSERT(sizeof(%s) == sizeof(Inspector::InspectorObject), cannot_cast);
+ return *reinterpret_cast<RefPtr<%s>*>(&m_result);
+ }
+
+ PassRefPtr<%s> release()
+ {
+ return RefPtr<%s>(*this).release();
+ }
+ };
+
+""")
+
+class_binding_builder_part_4 = (
+""" static Builder<NoFieldsSet> create()
+ {
+ return Builder<NoFieldsSet>(Inspector::InspectorObject::create());
+ }
+""")
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/__init__.py b/Source/JavaScriptCore/inspector/scripts/codegen/__init__.py
deleted file mode 100644
index 6077fa97a..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/__init__.py
+++ /dev/null
@@ -1,24 +0,0 @@
-# Required for Python to search this directory for module files
-
-from models import *
-from generator import *
-from cpp_generator import *
-from objc_generator import *
-
-from generate_cpp_alternate_backend_dispatcher_header import *
-from generate_cpp_backend_dispatcher_header import *
-from generate_cpp_backend_dispatcher_implementation import *
-from generate_cpp_frontend_dispatcher_header import *
-from generate_cpp_frontend_dispatcher_implementation import *
-from generate_cpp_protocol_types_header import *
-from generate_cpp_protocol_types_implementation import *
-from generate_js_backend_commands import *
-from generate_objc_backend_dispatcher_header import *
-from generate_objc_backend_dispatcher_implementation import *
-from generate_objc_configuration_header import *
-from generate_objc_configuration_implementation import *
-from generate_objc_conversion_helpers import *
-from generate_objc_frontend_dispatcher_implementation import *
-from generate_objc_header import *
-from generate_objc_internal_header import *
-from generate_objc_protocol_types_implementation import *
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator.py b/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator.py
deleted file mode 100644
index edd330da4..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator.py
+++ /dev/null
@@ -1,314 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-import logging
-import os.path
-import re
-
-from generator import ucfirst
-from models import PrimitiveType, ObjectType, ArrayType, EnumType, AliasedType, Frameworks
-
-log = logging.getLogger('global')
-
-_PRIMITIVE_TO_CPP_NAME_MAP = {
- 'boolean': 'bool',
- 'integer': 'int',
- 'number': 'double',
- 'string': 'String',
- 'object': 'Inspector::InspectorObject',
- 'array': 'Inspector::InspectorArray',
- 'any': 'Inspector::InspectorValue'
-}
-
-# This class contains extra static methods used for generation, but does
-# not participate in any inheritance hierarchy. File generators should
-# extend the generic "Generator" class instead.
-class CppGenerator:
-
- # Miscellaneous text manipulation routines.
- @staticmethod
- def cpp_getter_method_for_type(_type):
- if isinstance(_type, ObjectType):
- return 'getObject'
- if isinstance(_type, ArrayType):
- return 'getArray'
- if isinstance(_type, PrimitiveType):
- if _type.raw_name() is 'integer':
- return 'getInteger'
- elif _type.raw_name() is 'number':
- return 'getDouble'
- elif _type.raw_name() is 'any':
- return 'getValue'
- else:
- return 'get' + ucfirst(_type.raw_name())
- if isinstance(_type, AliasedType):
- return CppGenerator.cpp_getter_method_for_type(_type.aliased_type)
- if isinstance(_type, EnumType):
- return CppGenerator.cpp_getter_method_for_type(_type.primitive_type)
-
- @staticmethod
- def cpp_setter_method_for_type(_type):
- if isinstance(_type, ObjectType):
- return 'setObject'
- if isinstance(_type, ArrayType):
- return 'setArray'
- if isinstance(_type, PrimitiveType):
- if _type.raw_name() is 'integer':
- return 'setInteger'
- elif _type.raw_name() is 'number':
- return 'setDouble'
- elif _type.raw_name() is 'any':
- return 'setValue'
- else:
- return 'set' + ucfirst(_type.raw_name())
- if isinstance(_type, AliasedType):
- return CppGenerator.cpp_setter_method_for_type(_type.aliased_type)
- if isinstance(_type, EnumType):
- return CppGenerator.cpp_setter_method_for_type(_type.primitive_type)
-
- # Generate type representations for various situations.
- @staticmethod
- def cpp_protocol_type_for_type(_type):
- if isinstance(_type, ObjectType) and len(_type.members) == 0:
- return 'Inspector::InspectorObject'
- if isinstance(_type, ArrayType):
- if _type.raw_name() is None: # Otherwise, fall through and use typedef'd name.
- return 'Inspector::Protocol::Array<%s>' % CppGenerator.cpp_protocol_type_for_type(_type.element_type)
- if isinstance(_type, (ObjectType, AliasedType, EnumType, ArrayType)):
- return 'Inspector::Protocol::%s::%s' % (_type.type_domain().domain_name, _type.raw_name())
- if isinstance(_type, PrimitiveType):
- return CppGenerator.cpp_name_for_primitive_type(_type)
-
- @staticmethod
- def cpp_protocol_type_for_type_member(type_member, object_declaration):
- if isinstance(type_member.type, EnumType) and type_member.type.is_anonymous:
- return '::'.join([CppGenerator.cpp_protocol_type_for_type(object_declaration.type), ucfirst(type_member.member_name)])
- else:
- return CppGenerator.cpp_protocol_type_for_type(type_member.type)
-
- @staticmethod
- def cpp_type_for_unchecked_formal_in_parameter(parameter):
- _type = parameter.type
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through to enum or primitive.
-
- if isinstance(_type, EnumType):
- _type = _type.primitive_type # Fall through to primitive.
-
- # This handles the 'any' type and objects with defined properties.
- if isinstance(_type, ObjectType) or _type.qualified_name() is 'object':
- cpp_name = 'Inspector::InspectorObject'
- if parameter.is_optional:
- return 'const %s*' % cpp_name
- else:
- return 'const %s&' % cpp_name
- if isinstance(_type, ArrayType):
- cpp_name = 'Inspector::InspectorArray'
- if parameter.is_optional:
- return 'const %s*' % cpp_name
- else:
- return 'const %s&' % cpp_name
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if parameter.is_optional:
- return 'const %s*' % cpp_name
- elif _type.raw_name() in ['string']:
- return 'const %s&' % cpp_name
- else:
- return cpp_name
-
- return "unknown_unchecked_formal_in_parameter_type"
-
- @staticmethod
- def cpp_type_for_checked_formal_event_parameter(parameter):
- return CppGenerator.cpp_type_for_type_with_name(parameter.type, parameter.parameter_name, parameter.is_optional)
-
- @staticmethod
- def cpp_type_for_type_member(member):
- return CppGenerator.cpp_type_for_type_with_name(member.type, member.member_name, False)
-
- @staticmethod
- def cpp_type_for_type_with_name(_type, type_name, is_optional):
- if isinstance(_type, (ArrayType, ObjectType)):
- return 'RefPtr<%s>' % CppGenerator.cpp_protocol_type_for_type(_type)
- if isinstance(_type, AliasedType):
- builder_type = CppGenerator.cpp_protocol_type_for_type(_type)
- if is_optional:
- return 'const %s* const' % builder_type
- elif _type.aliased_type.qualified_name() in ['integer', 'number']:
- return CppGenerator.cpp_name_for_primitive_type(_type.aliased_type)
- elif _type.aliased_type.qualified_name() in ['string']:
- return 'const %s&' % builder_type
- else:
- return builder_type
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if _type.qualified_name() in ['object']:
- return 'RefPtr<Inspector::InspectorObject>'
- elif _type.qualified_name() in ['any']:
- return 'RefPtr<Inspector::InspectorValue>'
- elif is_optional:
- return 'const %s* const' % cpp_name
- elif _type.qualified_name() in ['string']:
- return 'const %s&' % cpp_name
- else:
- return cpp_name
- if isinstance(_type, EnumType):
- if _type.is_anonymous:
- enum_type_name = ucfirst(type_name)
- else:
- enum_type_name = 'Inspector::Protocol::%s::%s' % (_type.type_domain().domain_name, _type.raw_name())
-
- if is_optional:
- return '%s*' % enum_type_name
- else:
- return '%s' % enum_type_name
-
- @staticmethod
- def cpp_type_for_formal_out_parameter(parameter):
- _type = parameter.type
-
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through.
-
- if isinstance(_type, (ObjectType, ArrayType)):
- return 'RefPtr<%s>&' % CppGenerator.cpp_protocol_type_for_type(_type)
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if parameter.is_optional:
- return "Inspector::Protocol::OptOutput<%s>*" % cpp_name
- else:
- return '%s*' % cpp_name
- if isinstance(_type, EnumType):
- if _type.is_anonymous:
- return '%sBackendDispatcherHandler::%s*' % (_type.type_domain().domain_name, ucfirst(parameter.parameter_name))
- else:
- return 'Inspector::Protocol::%s::%s*' % (_type.type_domain().domain_name, _type.raw_name())
-
- raise ValueError("unknown formal out parameter type.")
-
- # FIXME: this is only slightly different from out parameters; they could be unified.
- @staticmethod
- def cpp_type_for_formal_async_parameter(parameter):
- _type = parameter.type
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through.
-
- if isinstance(_type, EnumType):
- _type = _type.primitive_type # Fall through.
-
- if isinstance(_type, (ObjectType, ArrayType)):
- return 'RefPtr<%s>&&' % CppGenerator.cpp_protocol_type_for_type(_type)
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if parameter.is_optional:
- return "Inspector::Protocol::OptOutput<%s>*" % cpp_name
- elif _type.qualified_name() in ['integer', 'number']:
- return CppGenerator.cpp_name_for_primitive_type(_type)
- elif _type.qualified_name() in ['string']:
- return 'const %s&' % cpp_name
- else:
- return cpp_name
-
- raise ValueError("Unknown formal async parameter type.")
-
- # In-parameters don't use builder types, because they could be passed
- # "open types" that are manually constructed out of InspectorObjects.
-
- # FIXME: Only parameters that are actually open types should need non-builder parameter types.
- @staticmethod
- def cpp_type_for_stack_in_parameter(parameter):
- _type = parameter.type
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through.
-
- if isinstance(_type, EnumType):
- _type = _type.primitive_type # Fall through.
-
- if isinstance(_type, ObjectType):
- return "RefPtr<Inspector::InspectorObject>"
- if isinstance(_type, ArrayType):
- return "RefPtr<Inspector::InspectorArray>"
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if _type.qualified_name() in ['any', 'object']:
- return "RefPtr<%s>" % CppGenerator.cpp_name_for_primitive_type(_type)
- elif parameter.is_optional and _type.qualified_name() not in ['boolean', 'string', 'integer']:
- return "Inspector::Protocol::OptOutput<%s>" % cpp_name
- else:
- return cpp_name
-
- @staticmethod
- def cpp_type_for_stack_out_parameter(parameter):
- _type = parameter.type
- if isinstance(_type, (ArrayType, ObjectType)):
- return 'RefPtr<%s>' % CppGenerator.cpp_protocol_type_for_type(_type)
- if isinstance(_type, AliasedType):
- builder_type = CppGenerator.cpp_protocol_type_for_type(_type)
- if parameter.is_optional:
- return "Inspector::Protocol::OptOutput<%s>" % builder_type
- return '%s' % builder_type
- if isinstance(_type, PrimitiveType):
- cpp_name = CppGenerator.cpp_name_for_primitive_type(_type)
- if parameter.is_optional:
- return "Inspector::Protocol::OptOutput<%s>" % cpp_name
- else:
- return cpp_name
- if isinstance(_type, EnumType):
- if _type.is_anonymous:
- return '%sBackendDispatcherHandler::%s' % (_type.type_domain().domain_name, ucfirst(parameter.parameter_name))
- else:
- return 'Inspector::Protocol::%s::%s' % (_type.type_domain().domain_name, _type.raw_name())
-
- @staticmethod
- def cpp_assertion_method_for_type_member(type_member, object_declaration):
-
- def assertion_method_for_type(_type):
- return 'BindingTraits<%s>::assertValueHasExpectedType' % CppGenerator.cpp_protocol_type_for_type(_type)
-
- if isinstance(type_member.type, AliasedType):
- return assertion_method_for_type(type_member.type.aliased_type)
- if isinstance(type_member.type, EnumType) and type_member.type.is_anonymous:
- return 'BindingTraits<%s>::assertValueHasExpectedType' % CppGenerator.cpp_protocol_type_for_type_member(type_member, object_declaration)
-
- return assertion_method_for_type(type_member.type)
-
- @staticmethod
- def cpp_name_for_primitive_type(_type):
- return _PRIMITIVE_TO_CPP_NAME_MAP.get(_type.raw_name())
-
- # Decide whether certain helpers are necessary in a situation.
- @staticmethod
- def should_use_wrapper_for_return_type(_type):
- return not isinstance(_type, (ArrayType, ObjectType))
-
- @staticmethod
- def should_use_references_for_type(_type):
- return isinstance(_type, (ArrayType, ObjectType)) or (isinstance(_type, (PrimitiveType)) and _type.qualified_name() in ["any", "object"])
-
- @staticmethod
- def should_pass_by_copy_for_return_type(_type):
- return isinstance(_type, (ArrayType, ObjectType)) or (isinstance(_type, (PrimitiveType)) and _type.qualified_name() == "object")
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py b/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py
deleted file mode 100755
index 05f353097..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py
+++ /dev/null
@@ -1,263 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-# Generator templates, which can be filled with string.Template.
-# Following are classes that fill the templates from the typechecked model.
-
-class CppGeneratorTemplates:
-
- HeaderPrelude = (
- """#ifndef ${headerGuardString}
-#define ${headerGuardString}
-
-${includes}
-
-namespace Inspector {
-
-${typedefs}""")
-
- HeaderPostlude = (
- """} // namespace Inspector
-
-#endif // !defined(${headerGuardString})""")
-
- ImplementationPrelude = (
- """#include "config.h"
-#include ${primaryInclude}
-
-${secondaryIncludes}
-
-namespace Inspector {""")
-
- ImplementationPostlude = (
- """} // namespace Inspector
-""")
-
- AlternateDispatchersHeaderPrelude = (
- """#ifndef ${headerGuardString}
-#define ${headerGuardString}
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-${includes}
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-""")
-
- AlternateDispatchersHeaderPostlude = (
- """} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(${headerGuardString})""")
-
- AlternateBackendDispatcherHeaderDomainHandlerInterfaceDeclaration = (
- """class Alternate${domainName}BackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~Alternate${domainName}BackendDispatcher() { }
-${commandDeclarations}
-};""")
-
- BackendDispatcherHeaderDomainHandlerDeclaration = (
- """${classAndExportMacro} ${domainName}BackendDispatcherHandler {
-public:
-${commandDeclarations}
-protected:
- virtual ~${domainName}BackendDispatcherHandler();
-};""")
-
- BackendDispatcherHeaderDomainDispatcherDeclaration = (
- """${classAndExportMacro} ${domainName}BackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<${domainName}BackendDispatcher> create(BackendDispatcher*, ${domainName}BackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-${commandDeclarations}
-private:
- ${domainName}BackendDispatcher(BackendDispatcher&, ${domainName}BackendDispatcherHandler*);
- ${domainName}BackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(Alternate${domainName}BackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- Alternate${domainName}BackendDispatcher* m_alternateDispatcher;
-#endif
-};""")
-
- BackendDispatcherHeaderAsyncCommandDeclaration = (
- """ ${classAndExportMacro} ${callbackName} : public BackendDispatcher::CallbackBase {
- public:
- ${callbackName}(Ref<BackendDispatcher>&&, int id);
- void sendSuccess(${outParameters});
- };
- virtual void ${commandName}(${inParameters}) = 0;""")
-
- BackendDispatcherImplementationSmallSwitch = (
- """void ${domainName}BackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<${domainName}BackendDispatcher> protect(*this);
-
-${dispatchCases}
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\\'', "${domainName}", '.', method, "' was not found"));
-}""")
-
- BackendDispatcherImplementationLargeSwitch = (
-"""void ${domainName}BackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<${domainName}BackendDispatcher> protect(*this);
-
- typedef void (${domainName}BackendDispatcher::*CallHandler)(long callId, const InspectorObject& message);
- typedef HashMap<String, CallHandler> DispatchMap;
- DEPRECATED_DEFINE_STATIC_LOCAL(DispatchMap, dispatchMap, ());
- if (dispatchMap.isEmpty()) {
- static const struct MethodTable {
- const char* name;
- CallHandler handler;
- } commands[] = {
-${dispatchCases}
- };
- size_t length = WTF_ARRAY_LENGTH(commands);
- for (size_t i = 0; i < length; ++i)
- dispatchMap.add(commands[i].name, commands[i].handler);
- }
-
- HashMap<String, CallHandler>::iterator it = dispatchMap.find(method);
- if (it == dispatchMap.end()) {
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\\'', "${domainName}", '.', method, "' was not found"));
- return;
- }
-
- ((*this).*it->value)(callId, message.get());
-}""")
-
- BackendDispatcherImplementationDomainConstructor = (
- """Ref<${domainName}BackendDispatcher> ${domainName}BackendDispatcher::create(BackendDispatcher* backendDispatcher, ${domainName}BackendDispatcherHandler* agent)
-{
- return adoptRef(*new ${domainName}BackendDispatcher(*backendDispatcher, agent));
-}
-
-${domainName}BackendDispatcher::${domainName}BackendDispatcher(BackendDispatcher& backendDispatcher, ${domainName}BackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("${domainName}"), this);
-}""")
-
- BackendDispatcherImplementationPrepareCommandArguments = (
-""" auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
-${inParameterDeclarations}
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method \'%s\' can't be processed", "${domainName}.${commandName}");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-""")
-
- BackendDispatcherImplementationAsyncCommand = (
-"""${domainName}BackendDispatcherHandler::${callbackName}::${callbackName}(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTF::move(backendDispatcher), id) { }
-
-void ${domainName}BackendDispatcherHandler::${callbackName}::sendSuccess(${formalParameters})
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
-${outParameterAssignments}
- sendIfActive(WTF::move(jsonMessage), ErrorString());
-}""")
-
- FrontendDispatcherDomainDispatcherDeclaration = (
-"""${classAndExportMacro} ${domainName}FrontendDispatcher {
-public:
- ${domainName}FrontendDispatcher(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChannel) { }
-${eventDeclarations}
-private:
- FrontendChannel* m_frontendChannel;
-};""")
-
- ProtocolObjectBuilderDeclarationPrelude = (
-""" template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*${objectType}*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class ${objectType};
- public:""")
-
- ProtocolObjectBuilderDeclarationPostlude = (
-"""
- Ref<${objectType}> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(${objectType}) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<${objectType}>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
-${constructorExample}
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }""")
-
- ProtocolObjectRuntimeCast = (
-"""RefPtr<${objectType}> BindingTraits<${objectType}>::runtimeCast(RefPtr<InspectorValue>&& value)
-{
- RefPtr<InspectorObject> result;
- bool castSucceeded = value->asObject(result);
- ASSERT_UNUSED(castSucceeded, castSucceeded);
-#if !ASSERT_DISABLED
- BindingTraits<${objectType}>::assertValueHasExpectedType(result.get());
-#endif // !ASSERT_DISABLED
- COMPILE_ASSERT(sizeof(${objectType}) == sizeof(InspectorObjectBase), type_cast_problem);
- return static_cast<${objectType}*>(static_cast<InspectorObjectBase*>(result.get()));
-}
-""")
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py
deleted file mode 100755
index d4a8d5afe..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-import re
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator
-
-log = logging.getLogger('global')
-
-
-class CppAlternateBackendDispatcherHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return 'InspectorAlternateBackendDispatchers.h'
-
- def generate_output(self):
- headers = [
- '"InspectorProtocolTypes.h"',
- '<JavaScriptCore/InspectorBackendDispatcher.h>',
- ]
-
- header_args = {
- 'headerGuardString': re.sub('\W+', '_', self.output_filename()),
- 'includes': '\n'.join(['#include ' + header for header in headers]),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.AlternateDispatchersHeaderPrelude).substitute(None, **header_args))
- sections.append('\n'.join(filter(None, map(self._generate_handler_declarations_for_domain, domains))))
- sections.append(Template(CppTemplates.AlternateDispatchersHeaderPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_handler_declarations_for_domain(self, domain):
- if not domain.commands:
- return ''
-
- command_declarations = []
- for command in domain.commands:
- command_declarations.append(self._generate_handler_declaration_for_command(command))
-
- handler_args = {
- 'domainName': domain.domain_name,
- 'commandDeclarations': '\n'.join(command_declarations),
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(CppTemplates.AlternateBackendDispatcherHeaderDomainHandlerInterfaceDeclaration).substitute(None, **handler_args))
-
- def _generate_handler_declaration_for_command(self, command):
- lines = []
- parameters = ['long callId']
- for _parameter in command.call_parameters:
- parameters.append('%s in_%s' % (CppGenerator.cpp_type_for_unchecked_formal_in_parameter(_parameter), _parameter.parameter_name))
-
- command_args = {
- 'commandName': command.command_name,
- 'parameters': ', '.join(parameters),
- }
- lines.append(' virtual void %(commandName)s(%(parameters)s) = 0;' % command_args)
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py
deleted file mode 100755
index 54bdb3e91..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py
+++ /dev/null
@@ -1,208 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import re
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import EnumType
-
-log = logging.getLogger('global')
-
-
-class CppBackendDispatcherHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorBackendDispatchers.h"
-
- def domains_to_generate(self):
- return filter(lambda domain: len(domain.commands) > 0, Generator.domains_to_generate(self))
-
- def generate_output(self):
- headers = [
- '"InspectorProtocolObjects.h"',
- '<inspector/InspectorBackendDispatcher.h>',
- '<wtf/text/WTFString.h>']
-
- typedefs = [('String', 'ErrorString')]
-
- header_args = {
- 'headerGuardString': re.sub('\W+', '_', self.output_filename()),
- 'includes': '\n'.join(['#include ' + header for header in headers]),
- 'typedefs': '\n'.join(['typedef %s %s;' % typedef for typedef in typedefs]),
- }
-
- domains = self.domains_to_generate()
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.HeaderPrelude).substitute(None, **header_args))
- sections.append(self._generate_alternate_handler_forward_declarations_for_domains(domains))
- sections.extend(map(self._generate_handler_declarations_for_domain, domains))
- sections.extend(map(self._generate_dispatcher_declarations_for_domain, domains))
- sections.append(Template(CppTemplates.HeaderPostlude).substitute(None, **header_args))
- return "\n\n".join(sections)
-
- # Private methods.
-
- def _generate_alternate_handler_forward_declarations_for_domains(self, domains):
- if not domains:
- return ''
-
- lines = []
- lines.append('#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)')
- for domain in domains:
- lines.append(self.wrap_with_guard_for_domain(domain, 'class Alternate%sBackendDispatcher;' % domain.domain_name))
- lines.append('#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)')
- return '\n'.join(lines)
-
- def _generate_handler_declarations_for_domain(self, domain):
- classComponents = ['class']
- exportMacro = self.model().framework.setting('export_macro', None)
- if exportMacro is not None:
- classComponents.append(exportMacro)
-
- used_enum_names = set()
-
- command_declarations = []
- for command in domain.commands:
- command_declarations.append(self._generate_handler_declaration_for_command(command, used_enum_names))
-
- handler_args = {
- 'classAndExportMacro': " ".join(classComponents),
- 'domainName': domain.domain_name,
- 'commandDeclarations': "\n".join(command_declarations)
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(CppTemplates.BackendDispatcherHeaderDomainHandlerDeclaration).substitute(None, **handler_args))
-
- def _generate_anonymous_enum_for_parameter(self, parameter, command):
- enum_args = {
- 'parameterName': parameter.parameter_name,
- 'commandName': command.command_name
- }
-
- lines = []
- lines.append(' // Named after parameter \'%(parameterName)s\' while generating command/event %(commandName)s.' % enum_args)
- lines.append(' enum class %s {' % ucfirst(parameter.parameter_name))
- for enum_value in parameter.type.enum_values():
- lines.append(' %s = %d,' % (Generator.stylized_name_for_enum_value(enum_value), self.encoding_for_enum_value(enum_value)))
- lines.append(' }; // enum class %s' % ucfirst(parameter.parameter_name))
- return '\n'.join(lines)
-
- def _generate_handler_declaration_for_command(self, command, used_enum_names):
- if command.is_async:
- return self._generate_async_handler_declaration_for_command(command)
-
- lines = []
- parameters = ['ErrorString&']
- for _parameter in command.call_parameters:
- parameter_name = 'in_' + _parameter.parameter_name
- if _parameter.is_optional:
- parameter_name = 'opt_' + parameter_name
-
- parameters.append("%s %s" % (CppGenerator.cpp_type_for_unchecked_formal_in_parameter(_parameter), parameter_name))
-
- if isinstance(_parameter.type, EnumType) and _parameter.parameter_name not in used_enum_names:
- lines.append(self._generate_anonymous_enum_for_parameter(_parameter, command))
- used_enum_names.add(_parameter.parameter_name)
-
- for _parameter in command.return_parameters:
- parameter_name = 'out_' + _parameter.parameter_name
- if _parameter.is_optional:
- parameter_name = 'opt_' + parameter_name
- parameters.append("%s %s" % (CppGenerator.cpp_type_for_formal_out_parameter(_parameter), parameter_name))
-
- if isinstance(_parameter.type, EnumType) and _parameter.parameter_name not in used_enum_names:
- lines.append(self._generate_anonymous_enum_for_parameter(_parameter, command))
- used_enum_names.add(_parameter.parameter_name)
-
- command_args = {
- 'commandName': command.command_name,
- 'parameters': ", ".join(parameters)
- }
- lines.append(' virtual void %(commandName)s(%(parameters)s) = 0;' % command_args)
- return '\n'.join(lines)
-
- def _generate_async_handler_declaration_for_command(self, command):
- callbackName = "%sCallback" % ucfirst(command.command_name)
-
- in_parameters = ['ErrorString&']
- for _parameter in command.call_parameters:
- parameter_name = 'in_' + _parameter.parameter_name
- if _parameter.is_optional:
- parameter_name = 'opt_' + parameter_name
-
- in_parameters.append("%s %s" % (CppGenerator.cpp_type_for_unchecked_formal_in_parameter(_parameter), parameter_name))
- in_parameters.append("Ref<%s>&& callback" % callbackName)
-
- out_parameters = []
- for _parameter in command.return_parameters:
- out_parameters.append("%s %s" % (CppGenerator.cpp_type_for_formal_async_parameter(_parameter), _parameter.parameter_name))
-
- class_components = ['class']
- export_macro = self.model().framework.setting('export_macro', None)
- if export_macro:
- class_components.append(export_macro)
-
- command_args = {
- 'classAndExportMacro': ' '.join(class_components),
- 'callbackName': callbackName,
- 'commandName': command.command_name,
- 'inParameters': ", ".join(in_parameters),
- 'outParameters': ", ".join(out_parameters),
- }
-
- return Template(CppTemplates.BackendDispatcherHeaderAsyncCommandDeclaration).substitute(None, **command_args)
-
- def _generate_dispatcher_declarations_for_domain(self, domain):
- classComponents = ['class']
- exportMacro = self.model().framework.setting('export_macro', None)
- if exportMacro is not None:
- classComponents.append(exportMacro)
-
- declarations = []
- if len(domain.commands) > 0:
- declarations.append('private:')
- declarations.extend(map(self._generate_dispatcher_declaration_for_command, domain.commands))
-
- handler_args = {
- 'classAndExportMacro': " ".join(classComponents),
- 'domainName': domain.domain_name,
- 'commandDeclarations': "\n".join(declarations)
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(CppTemplates.BackendDispatcherHeaderDomainDispatcherDeclaration).substitute(None, **handler_args))
-
- def _generate_dispatcher_declaration_for_command(self, command):
- return " void %s(long callId, const InspectorObject& message);" % command.command_name
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py
deleted file mode 100755
index 350f0854c..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import ObjectType, ArrayType
-
-log = logging.getLogger('global')
-
-
-class CppBackendDispatcherImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorBackendDispatchers.cpp"
-
- def domains_to_generate(self):
- return filter(lambda domain: len(domain.commands) > 0, Generator.domains_to_generate(self))
-
- def generate_output(self):
- secondary_headers = [
- '<inspector/InspectorFrontendChannel.h>',
- '<inspector/InspectorValues.h>',
- '<wtf/text/CString.h>']
-
- secondary_includes = ['#include %s' % header for header in secondary_headers]
- secondary_includes.append('')
- secondary_includes.append('#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)')
- secondary_includes.append('#include "InspectorAlternateBackendDispatchers.h"')
- secondary_includes.append('#endif')
-
- header_args = {
- 'primaryInclude': '"InspectorBackendDispatchers.h"',
- 'secondaryIncludes': '\n'.join(secondary_includes),
- }
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.append("\n".join(map(self._generate_handler_class_destructor_for_domain, self.domains_to_generate())))
- sections.extend(map(self._generate_dispatcher_implementations_for_domain, self.domains_to_generate()))
- sections.append(Template(CppTemplates.ImplementationPostlude).substitute(None, **header_args))
- return "\n\n".join(sections)
-
- # Private methods.
-
- def _generate_handler_class_destructor_for_domain(self, domain):
- destructor_args = {
- 'domainName': domain.domain_name
- }
- destructor = '%(domainName)sBackendDispatcherHandler::~%(domainName)sBackendDispatcherHandler() { }' % destructor_args
- return self.wrap_with_guard_for_domain(domain, destructor)
-
- def _generate_dispatcher_implementations_for_domain(self, domain):
- implementations = []
-
- constructor_args = {
- 'domainName': domain.domain_name,
- }
- implementations.append(Template(CppTemplates.BackendDispatcherImplementationDomainConstructor).substitute(None, **constructor_args))
-
- if len(domain.commands) <= 5:
- implementations.append(self._generate_small_dispatcher_switch_implementation_for_domain(domain))
- else:
- implementations.append(self._generate_large_dispatcher_switch_implementation_for_domain(domain))
-
- for command in domain.commands:
- if command.is_async:
- implementations.append(self._generate_async_dispatcher_class_for_domain(command, domain))
- implementations.append(self._generate_dispatcher_implementation_for_command(command, domain))
-
- return self.wrap_with_guard_for_domain(domain, '\n\n'.join(implementations))
-
- def _generate_small_dispatcher_switch_implementation_for_domain(self, domain):
- cases = []
- cases.append(' if (method == "%s")' % domain.commands[0].command_name)
- cases.append(' %s(callId, message);' % domain.commands[0].command_name)
- for command in domain.commands[1:]:
- cases.append(' else if (method == "%s")' % command.command_name)
- cases.append(' %s(callId, message);' % command.command_name)
-
- switch_args = {
- 'domainName': domain.domain_name,
- 'dispatchCases': "\n".join(cases)
- }
-
- return Template(CppTemplates.BackendDispatcherImplementationSmallSwitch).substitute(None, **switch_args)
-
- def _generate_large_dispatcher_switch_implementation_for_domain(self, domain):
- cases = []
- for command in domain.commands:
- args = {
- 'domainName': domain.domain_name,
- 'commandName': command.command_name
- }
- cases.append(' { "%(commandName)s", &%(domainName)sBackendDispatcher::%(commandName)s },' % args)
-
- switch_args = {
- 'domainName': domain.domain_name,
- 'dispatchCases': "\n".join(cases)
- }
-
- return Template(CppTemplates.BackendDispatcherImplementationLargeSwitch).substitute(None, **switch_args)
-
- def _generate_async_dispatcher_class_for_domain(self, command, domain):
- out_parameter_assignments = []
- formal_parameters = []
-
- for parameter in command.return_parameters:
- param_args = {
- 'keyedSetMethod': CppGenerator.cpp_setter_method_for_type(parameter.type),
- 'parameterKey': parameter.parameter_name,
- 'parameterName': parameter.parameter_name,
- 'parameterType': CppGenerator.cpp_type_for_stack_in_parameter(parameter),
- }
-
- formal_parameters.append('%s %s' % (CppGenerator.cpp_type_for_formal_async_parameter(parameter), parameter.parameter_name))
-
- if parameter.is_optional:
- if CppGenerator.should_use_wrapper_for_return_type(parameter.type):
- out_parameter_assignments.append(' if (%(parameterName)s.isAssigned())' % param_args)
- out_parameter_assignments.append(' jsonMessage->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), %(parameterName)s.getValue());' % param_args)
- else:
- out_parameter_assignments.append(' if (%(parameterName)s)' % param_args)
- out_parameter_assignments.append(' jsonMessage->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), %(parameterName)s);' % param_args)
- elif parameter.type.is_enum():
- out_parameter_assignments.append(' jsonMessage->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), Inspector::Protocol::getEnumConstantValue(%(parameterName)s));' % param_args)
- else:
- out_parameter_assignments.append(' jsonMessage->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), %(parameterName)s);' % param_args)
-
- async_args = {
- 'domainName': domain.domain_name,
- 'callbackName': ucfirst(command.command_name) + 'Callback',
- 'formalParameters': ", ".join(formal_parameters),
- 'outParameterAssignments': "\n".join(out_parameter_assignments)
- }
- return Template(CppTemplates.BackendDispatcherImplementationAsyncCommand).substitute(None, **async_args)
-
- def _generate_dispatcher_implementation_for_command(self, command, domain):
- in_parameter_declarations = []
- out_parameter_declarations = []
- out_parameter_assignments = []
- alternate_dispatcher_method_parameters = ['callId']
- method_parameters = ['error']
-
- for parameter in command.call_parameters:
- parameter_name = 'in_' + parameter.parameter_name
- if parameter.is_optional:
- parameter_name = 'opt_' + parameter_name
-
- out_success_argument = 'nullptr'
- if parameter.is_optional:
- out_success_argument = '&%s_valueFound' % parameter_name
- in_parameter_declarations.append(' bool %s_valueFound = false;' % parameter_name)
-
- # Now add appropriate operators.
- parameter_expression = parameter_name
-
- if CppGenerator.should_use_references_for_type(parameter.type):
- if parameter.is_optional:
- parameter_expression = '%s.get()' % parameter_expression
- else:
- # This assumes that we have already proved the object is non-null.
- # If a required property is missing, InspectorBackend::getObject will
- # append a protocol error, and the method dispatcher will return without
- # invoking the backend method (and dereferencing the object).
- parameter_expression = '*%s' % parameter_expression
- elif parameter.is_optional:
- parameter_expression = '&%s' % parameter_expression
-
- param_args = {
- 'parameterType': CppGenerator.cpp_type_for_stack_in_parameter(parameter),
- 'parameterKey': parameter.parameter_name,
- 'parameterName': parameter_name,
- 'parameterExpression': parameter_expression,
- 'keyedGetMethod': CppGenerator.cpp_getter_method_for_type(parameter.type),
- 'successOutParam': out_success_argument
- }
-
- in_parameter_declarations.append(' %(parameterType)s %(parameterName)s = BackendDispatcher::%(keyedGetMethod)s(paramsContainer.get(), ASCIILiteral("%(parameterKey)s"), %(successOutParam)s, protocolErrors.get());' % param_args)
-
- if parameter.is_optional:
- optional_in_parameter_string = '%(parameterName)s_valueFound ? %(parameterExpression)s : nullptr' % param_args
- alternate_dispatcher_method_parameters.append(optional_in_parameter_string)
- method_parameters.append(optional_in_parameter_string)
- else:
- alternate_dispatcher_method_parameters.append(parameter_expression)
- method_parameters.append(parameter_expression)
-
- if command.is_async:
- async_args = {
- 'domainName': domain.domain_name,
- 'callbackName': ucfirst(command.command_name) + 'Callback'
- }
-
- out_parameter_assignments.append(' callback->disable();')
- out_parameter_assignments.append(' m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::ServerError, error);')
- out_parameter_assignments.append(' return;')
- method_parameters.append('callback.copyRef()')
-
- else:
- for parameter in command.return_parameters:
- param_args = {
- 'parameterType': CppGenerator.cpp_type_for_stack_out_parameter(parameter),
- 'parameterKey': parameter.parameter_name,
- 'parameterName': parameter.parameter_name,
- 'keyedSetMethod': CppGenerator.cpp_setter_method_for_type(parameter.type),
-
- }
-
- out_parameter_declarations.append(' %(parameterType)s out_%(parameterName)s;' % param_args)
- if parameter.is_optional:
- if CppGenerator.should_use_wrapper_for_return_type(parameter.type):
- out_parameter_assignments.append(' if (out_%(parameterName)s.isAssigned())' % param_args)
- out_parameter_assignments.append(' result->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), out_%(parameterName)s.getValue());' % param_args)
- else:
- out_parameter_assignments.append(' if (out_%(parameterName)s)' % param_args)
- out_parameter_assignments.append(' result->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), out_%(parameterName)s);' % param_args)
- elif parameter.type.is_enum():
- out_parameter_assignments.append(' result->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), Inspector::Protocol::getEnumConstantValue(out_%(parameterName)s));' % param_args)
- else:
- out_parameter_assignments.append(' result->%(keyedSetMethod)s(ASCIILiteral("%(parameterKey)s"), out_%(parameterName)s);' % param_args)
-
- if CppGenerator.should_pass_by_copy_for_return_type(parameter.type):
- method_parameters.append('out_' + parameter.parameter_name)
- else:
- method_parameters.append('&out_' + parameter.parameter_name)
-
- command_args = {
- 'domainName': domain.domain_name,
- 'callbackName': '%sCallback' % ucfirst(command.command_name),
- 'commandName': command.command_name,
- 'inParameterDeclarations': '\n'.join(in_parameter_declarations),
- 'invocationParameters': ', '.join(method_parameters),
- 'alternateInvocationParameters': ', '.join(alternate_dispatcher_method_parameters),
- }
-
- lines = []
- if len(command.call_parameters) == 0:
- lines.append('void %(domainName)sBackendDispatcher::%(commandName)s(long callId, const InspectorObject&)' % command_args)
- else:
- lines.append('void %(domainName)sBackendDispatcher::%(commandName)s(long callId, const InspectorObject& message)' % command_args)
- lines.append('{')
-
- if len(command.call_parameters) > 0:
- lines.append(Template(CppTemplates.BackendDispatcherImplementationPrepareCommandArguments).substitute(None, **command_args))
-
- lines.append('#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)')
- lines.append(' if (m_alternateDispatcher) {')
- lines.append(' m_alternateDispatcher->%(commandName)s(%(alternateInvocationParameters)s);' % command_args)
- lines.append(' return;')
- lines.append(' }')
- lines.append('#endif')
- lines.append('')
-
- lines.append(' ErrorString error;')
- lines.append(' Ref<InspectorObject> result = InspectorObject::create();')
- if command.is_async:
- lines.append(' Ref<%(domainName)sBackendDispatcherHandler::%(callbackName)s> callback = adoptRef(*new %(domainName)sBackendDispatcherHandler::%(callbackName)s(m_backendDispatcher.copyRef(), callId));' % command_args)
- if len(command.return_parameters) > 0:
- lines.extend(out_parameter_declarations)
- lines.append(' m_agent->%(commandName)s(%(invocationParameters)s);' % command_args)
- lines.append('')
- if command.is_async:
- lines.append(' if (error.length()) {')
- lines.extend(out_parameter_assignments)
- lines.append(' }')
- elif len(command.return_parameters) > 1:
- lines.append(' if (!error.length()) {')
- lines.extend(out_parameter_assignments)
- lines.append(' }')
- elif len(command.return_parameters) == 1:
- lines.append(' if (!error.length())')
- lines.extend(out_parameter_assignments)
- lines.append('')
-
- if not command.is_async:
- lines.append(' m_backendDispatcher->sendResponse(callId, WTF::move(result), error);')
- lines.append('}')
- return "\n".join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py
deleted file mode 100755
index ff09ab39b..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import re
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import EnumType
-
-log = logging.getLogger('global')
-
-
-class CppFrontendDispatcherHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorFrontendDispatchers.h"
-
- def domains_to_generate(self):
- return filter(lambda domain: len(domain.events) > 0, Generator.domains_to_generate(self))
-
- def generate_output(self):
- headers = [
- '"InspectorProtocolObjects.h"',
- '<inspector/InspectorFrontendChannel.h>',
- '<inspector/InspectorValues.h>',
- '<wtf/text/WTFString.h>']
-
- header_args = {
- 'headerGuardString': re.sub('\W+', '_', self.output_filename()),
- 'includes': '\n'.join(['#include ' + header for header in headers]),
- 'typedefs': '',
- }
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.HeaderPrelude).substitute(None, **header_args))
- sections.extend(map(self._generate_dispatcher_declarations_for_domain, self.domains_to_generate()))
- sections.append(Template(CppTemplates.HeaderPostlude).substitute(None, **header_args))
- return "\n\n".join(sections)
-
- # Private methods.
-
- def _generate_anonymous_enum_for_parameter(self, parameter, event):
- enum_args = {
- 'parameterName': parameter.parameter_name,
- 'eventName': event.event_name
- }
-
- lines = []
- lines.append(' // Named after parameter \'%(parameterName)s\' while generating command/event %(eventName)s.' % enum_args)
- lines.append(' enum class %s {' % ucfirst(parameter.parameter_name))
- for enum_value in parameter.type.enum_values():
- lines.append(' %s = %d,' % (Generator.stylized_name_for_enum_value(enum_value), self.encoding_for_enum_value(enum_value)))
- lines.append(' }; // enum class %s' % ucfirst(parameter.parameter_name))
- return "\n".join(lines)
-
- def _generate_dispatcher_declarations_for_domain(self, domain):
- classComponents = ['class']
- exportMacro = self.model().framework.setting('export_macro', None)
- if exportMacro is not None:
- classComponents.append(exportMacro)
-
- used_enum_names = set([])
-
- event_declarations = []
- for event in domain.events:
- event_declarations.append(self._generate_dispatcher_declaration_for_event(event, domain, used_enum_names))
-
- handler_args = {
- 'classAndExportMacro': " ".join(classComponents),
- 'domainName': domain.domain_name,
- 'eventDeclarations': "\n".join(event_declarations)
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(CppTemplates.FrontendDispatcherDomainDispatcherDeclaration).substitute(None, **handler_args))
-
- def _generate_dispatcher_declaration_for_event(self, event, domain, used_enum_names):
- formal_parameters = []
- lines = []
- for parameter in event.event_parameters:
- formal_parameters.append('%s %s' % (CppGenerator.cpp_type_for_checked_formal_event_parameter(parameter), parameter.parameter_name))
- if isinstance(parameter.type, EnumType) and parameter.parameter_name not in used_enum_names:
- lines.append(self._generate_anonymous_enum_for_parameter(parameter, event))
- used_enum_names.add(parameter.parameter_name)
-
- lines.append(" void %s(%s);" % (event.event_name, ", ".join(formal_parameters)))
- return "\n".join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py
deleted file mode 100755
index 798157a06..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py
+++ /dev/null
@@ -1,121 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import ObjectType, ArrayType
-
-log = logging.getLogger('global')
-
-
-class CppFrontendDispatcherImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorFrontendDispatchers.cpp"
-
- def domains_to_generate(self):
- return filter(lambda domain: len(domain.events) > 0, Generator.domains_to_generate(self))
-
- def generate_output(self):
- secondary_headers = ['<wtf/text/CString.h>']
-
- header_args = {
- 'primaryInclude': '"InspectorFrontendDispatchers.h"',
- 'secondaryIncludes': "\n".join(['#include %s' % header for header in secondary_headers]),
- }
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.extend(map(self._generate_dispatcher_implementations_for_domain, self.domains_to_generate()))
- sections.append(Template(CppTemplates.ImplementationPostlude).substitute(None, **header_args))
- return "\n\n".join(sections)
-
- # Private methods.
-
- def _generate_dispatcher_implementations_for_domain(self, domain):
- implementations = []
- for event in domain.events:
- implementations.append(self._generate_dispatcher_implementation_for_event(event, domain))
-
- return self.wrap_with_guard_for_domain(domain, '\n\n'.join(implementations))
-
- def _generate_dispatcher_implementation_for_event(self, event, domain):
- lines = []
- parameter_assignments = []
- formal_parameters = []
-
- for parameter in event.event_parameters:
-
- parameter_value = parameter.parameter_name
- if parameter.is_optional and not CppGenerator.should_pass_by_copy_for_return_type(parameter.type):
- parameter_value = '*' + parameter_value
- if parameter.type.is_enum():
- parameter_value = 'Inspector::Protocol::getEnumConstantValue(%s)' % parameter_value
-
- parameter_args = {
- 'parameterType': CppGenerator.cpp_type_for_stack_out_parameter(parameter),
- 'parameterName': parameter.parameter_name,
- 'parameterValue': parameter_value,
- 'keyedSetMethod': CppGenerator.cpp_setter_method_for_type(parameter.type),
- }
-
- if parameter.is_optional:
- parameter_assignments.append(' if (%(parameterName)s)' % parameter_args)
- parameter_assignments.append(' paramsObject->%(keyedSetMethod)s(ASCIILiteral("%(parameterName)s"), %(parameterValue)s);' % parameter_args)
- else:
- parameter_assignments.append(' paramsObject->%(keyedSetMethod)s(ASCIILiteral("%(parameterName)s"), %(parameterValue)s);' % parameter_args)
-
- formal_parameters.append('%s %s' % (CppGenerator.cpp_type_for_checked_formal_event_parameter(parameter), parameter.parameter_name))
-
- event_args = {
- 'domainName': domain.domain_name,
- 'eventName': event.event_name,
- 'formalParameters': ", ".join(formal_parameters)
- }
-
- lines.append('void %(domainName)sFrontendDispatcher::%(eventName)s(%(formalParameters)s)' % event_args)
- lines.append('{')
- lines.append(' Ref<InspectorObject> jsonMessage = InspectorObject::create();')
- lines.append(' jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("%(domainName)s.%(eventName)s"));' % event_args)
-
- if len(parameter_assignments) > 0:
- lines.append(' Ref<InspectorObject> paramsObject = InspectorObject::create();')
- lines.extend(parameter_assignments)
- lines.append(' jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));')
-
- lines.append('')
- lines.append(' m_frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());')
- lines.append('}')
- return "\n".join(lines)
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
deleted file mode 100755
index b07b0b9c7..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_header.py
+++ /dev/null
@@ -1,352 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import re
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import EnumType, ObjectType, PrimitiveType, AliasedType, ArrayType, Frameworks
-
-log = logging.getLogger('global')
-
-
-class CppProtocolTypesHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorProtocolObjects.h"
-
- def generate_output(self):
- domains = self.domains_to_generate()
- self.calculate_types_requiring_shape_assertions(domains)
-
- headers = set([
- '<inspector/InspectorProtocolTypes.h>',
- '<wtf/Assertions.h>',
- ])
-
- export_macro = self.model().framework.setting('export_macro', None)
-
- header_args = {
- 'headerGuardString': re.sub('\W+', '_', self.output_filename()),
- 'includes': '\n'.join(['#include ' + header for header in sorted(headers)]),
- 'typedefs': '',
- }
-
- return_type = 'String'
- return_type_with_export_macro = [return_type]
- if export_macro is not None:
- return_type_with_export_macro[:0] = [export_macro]
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.HeaderPrelude).substitute(None, **header_args))
- sections.append('namespace Protocol {')
- sections.append(self._generate_forward_declarations(domains))
- sections.append(self._generate_typedefs(domains))
- sections.append('%s getEnumConstantValue(int code);' % ' '.join(return_type_with_export_macro))
- sections.append('\n'.join([
- 'template<typename T> %s getEnumConstantValue(T enumValue)' % return_type,
- '{',
- ' return getEnumConstantValue(static_cast<int>(enumValue));',
- '}']))
-
- builder_sections = map(self._generate_builders_for_domain, domains)
- sections.extend(filter(lambda section: len(section) > 0, builder_sections))
- sections.append(self._generate_forward_declarations_for_binding_traits())
- sections.append('} // namespace Protocol')
- sections.append(Template(CppTemplates.HeaderPostlude).substitute(None, **header_args))
- return "\n\n".join(sections)
-
- # Private methods.
-
- # FIXME: move builders out of classes, uncomment forward declaration
-
- def _generate_forward_declarations(self, domains):
- sections = []
-
- for domain in domains:
- declaration_types = [decl.type for decl in domain.type_declarations]
- object_types = filter(lambda _type: isinstance(_type, ObjectType), declaration_types)
- enum_types = filter(lambda _type: isinstance(_type, EnumType), declaration_types)
- if len(object_types) + len(enum_types) == 0:
- continue
-
- domain_lines = []
- domain_lines.append('namespace %s {' % domain.domain_name)
-
- object_type_names = [_type.raw_name() for _type in object_types]
- enum_type_names = [_type.raw_name() for _type in enum_types]
-
- # Forward-declare all classes so the type builders won't break if rearranged.
- domain_lines.extend('class %s;' % name for name in sorted(object_type_names))
- domain_lines.extend('enum class %s;' % name for name in sorted(enum_type_names))
- 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 ''
- else:
- return """// Forward declarations.
-%s
-// End of forward declarations.
-""" % '\n\n'.join(sections)
-
- def _generate_typedefs(self, domains):
- sections = map(self._generate_typedefs_for_domain, domains)
- sections = filter(lambda text: len(text) > 0, sections)
-
- if len(sections) == 0:
- return ''
- else:
- return """// Typedefs.
-%s
-// End of typedefs.""" % '\n\n'.join(sections)
-
- def _generate_typedefs_for_domain(self, domain):
- primitive_declarations = filter(lambda decl: isinstance(decl.type, AliasedType), domain.type_declarations)
- array_declarations = filter(lambda decl: isinstance(decl.type, ArrayType), domain.type_declarations)
- if len(primitive_declarations) == 0 and len(array_declarations) == 0:
- return ''
-
- sections = []
- for declaration in primitive_declarations:
- primitive_name = CppGenerator.cpp_name_for_primitive_type(declaration.type.aliased_type)
- typedef_lines = []
- if len(declaration.description) > 0:
- typedef_lines.append('/* %s */' % declaration.description)
- typedef_lines.append('typedef %s %s;' % (primitive_name, declaration.type_name))
- sections.append('\n'.join(typedef_lines))
-
- for declaration in array_declarations:
- element_type = CppGenerator.cpp_protocol_type_for_type(declaration.type.element_type)
- typedef_lines = []
- if len(declaration.description) > 0:
- typedef_lines.append('/* %s */' % declaration.description)
- typedef_lines.append('typedef Inspector::Protocol::Array<%s> %s;' % (element_type, declaration.type_name))
- sections.append('\n'.join(typedef_lines))
-
- lines = []
- lines.append('namespace %s {' % domain.domain_name)
- lines.append('\n'.join(sections))
- lines.append('} // %s' % domain.domain_name)
- return self.wrap_with_guard_for_domain(domain, '\n'.join(lines))
-
- def _generate_builders_for_domain(self, domain):
- sections = []
-
- for type_declaration in domain.type_declarations:
- if isinstance(type_declaration.type, EnumType):
- sections.append(self._generate_struct_for_enum_declaration(type_declaration))
- elif isinstance(type_declaration.type, ObjectType):
- sections.append(self._generate_class_for_object_declaration(type_declaration, domain))
-
- sections = filter(lambda section: len(section) > 0, sections)
- if len(sections) == 0:
- return ''
-
- lines = []
- lines.append('namespace %s {' % domain.domain_name)
- lines.append('\n'.join(sections))
- lines.append('} // %s' % domain.domain_name)
- return self.wrap_with_guard_for_domain(domain, '\n'.join(lines))
-
- def _generate_class_for_object_declaration(self, type_declaration, domain):
- if len(type_declaration.type_members) == 0:
- return ''
-
- enum_members = filter(lambda member: isinstance(member.type, EnumType) and member.type.is_anonymous, type_declaration.type_members)
- required_members = filter(lambda member: not member.is_optional, type_declaration.type_members)
- optional_members = filter(lambda member: member.is_optional, type_declaration.type_members)
- object_name = type_declaration.type_name
-
- lines = []
- if len(type_declaration.description) > 0:
- lines.append('/* %s */' % type_declaration.description)
- base_class = 'Inspector::InspectorObject'
- if not Generator.type_has_open_fields(type_declaration.type):
- base_class = base_class + 'Base'
- lines.append('class %s : public %s {' % (object_name, base_class))
- lines.append('public:')
- for enum_member in enum_members:
- lines.append(' // Named after property name \'%s\' while generating %s.' % (enum_member.member_name, object_name))
- lines.append(self._generate_struct_for_anonymous_enum_member(enum_member))
- lines.append(self._generate_builder_state_enum(type_declaration))
-
- constructor_example = []
- constructor_example.append(' * Ref<%s> result = %s::create()' % (object_name, object_name))
- for member in required_members:
- constructor_example.append(' * .set%s(...)' % ucfirst(member.member_name))
- constructor_example.append(' * .release()')
-
- builder_args = {
- 'objectType': object_name,
- 'constructorExample': '\n'.join(constructor_example) + ';',
- }
-
- lines.append(Template(CppTemplates.ProtocolObjectBuilderDeclarationPrelude).substitute(None, **builder_args))
- for type_member in required_members:
- lines.append(self._generate_builder_setter_for_member(type_member, domain))
- lines.append(Template(CppTemplates.ProtocolObjectBuilderDeclarationPostlude).substitute(None, **builder_args))
- for member in optional_members:
- lines.append(self._generate_unchecked_setter_for_member(member, domain))
-
- if Generator.type_has_open_fields(type_declaration.type):
- lines.append('')
- lines.append(' // Property names for type generated as open.')
- for type_member in type_declaration.type_members:
- export_macro = self.model().framework.setting('export_macro', None)
- lines.append(' %s static const char* %s;' % (export_macro, ucfirst(type_member.member_name)))
-
- lines.append('};')
- lines.append('')
- return '\n'.join(lines)
-
- def _generate_struct_for_enum_declaration(self, enum_declaration):
- lines = []
- lines.append('/* %s */' % enum_declaration.description)
- lines.extend(self._generate_struct_for_enum_type(enum_declaration.type_name, enum_declaration.type))
- return '\n'.join(lines)
-
- def _generate_struct_for_anonymous_enum_member(self, enum_member):
- def apply_indentation(line):
- if line.startswith(('#', '/*', '*/', '//')) or len(line) is 0:
- return line
- else:
- return ' ' + line
-
- indented_lines = map(apply_indentation, self._generate_struct_for_enum_type(enum_member.member_name, enum_member.type))
- return '\n'.join(indented_lines)
-
- def _generate_struct_for_enum_type(self, enum_name, enum_type):
- lines = []
- enum_name = ucfirst(enum_name)
- lines.append('enum class %s {' % enum_name)
- for enum_value in enum_type.enum_values():
- lines.append(' %s = %s,' % (Generator.stylized_name_for_enum_value(enum_value), self.encoding_for_enum_value(enum_value)))
- lines.append('}; // enum class %s' % enum_name)
- return lines # The caller may want to adjust indentation, so don't join these lines.
-
- def _generate_builder_state_enum(self, type_declaration):
- lines = []
- required_members = filter(lambda member: not member.is_optional, type_declaration.type_members)
- enum_values = []
-
- lines.append(' enum {')
- lines.append(' NoFieldsSet = 0,')
- for i in range(len(required_members)):
- enum_value = "%sSet" % ucfirst(required_members[i].member_name)
- enum_values.append(enum_value)
- lines.append(' %s = 1 << %d,' % (enum_value, i))
- if len(enum_values) > 0:
- lines.append(' AllFieldsSet = (%s)' % ' | '.join(enum_values))
- else:
- lines.append(' AllFieldsSet = 0')
- lines.append(' };')
- lines.append('')
- return '\n'.join(lines)
-
- def _generate_builder_setter_for_member(self, type_member, domain):
- setter_args = {
- 'camelName': ucfirst(type_member.member_name),
- 'keyedSet': CppGenerator.cpp_setter_method_for_type(type_member.type),
- 'name': type_member.member_name,
- 'parameterType': CppGenerator.cpp_type_for_type_member(type_member)
- }
-
- lines = []
- lines.append('')
- lines.append(' Builder<STATE | %(camelName)sSet>& set%(camelName)s(%(parameterType)s value)' % setter_args)
- lines.append(' {')
- lines.append(' COMPILE_ASSERT(!(STATE & %(camelName)sSet), property_%(name)s_already_set);' % setter_args)
-
- if isinstance(type_member.type, EnumType):
- lines.append(' m_result->%(keyedSet)s(ASCIILiteral("%(name)s"), Inspector::Protocol::getEnumConstantValue(static_cast<int>(value)));' % setter_args)
- else:
- lines.append(' m_result->%(keyedSet)s(ASCIILiteral("%(name)s"), value);' % setter_args)
- lines.append(' return castState<%(camelName)sSet>();' % setter_args)
- lines.append(' }')
- return '\n'.join(lines)
-
- def _generate_unchecked_setter_for_member(self, type_member, domain):
- setter_args = {
- 'camelName': ucfirst(type_member.member_name),
- 'keyedSet': CppGenerator.cpp_setter_method_for_type(type_member.type),
- 'name': type_member.member_name,
- 'parameterType': CppGenerator.cpp_type_for_type_member(type_member)
- }
-
- lines = []
- lines.append('')
- lines.append(' void set%(camelName)s(%(parameterType)s value)' % setter_args)
- lines.append(' {')
- if isinstance(type_member.type, EnumType):
- lines.append(' InspectorObjectBase::%(keyedSet)s(ASCIILiteral("%(name)s"), Inspector::Protocol::getEnumConstantValue(static_cast<int>(value)));' % setter_args)
- elif CppGenerator.should_use_references_for_type(type_member.type):
- lines.append(' InspectorObjectBase::%(keyedSet)s(ASCIILiteral("%(name)s"), WTF::move(value));' % setter_args)
- else:
- lines.append(' InspectorObjectBase::%(keyedSet)s(ASCIILiteral("%(name)s"), value);' % setter_args)
- lines.append(' }')
- return '\n'.join(lines)
-
- def _generate_forward_declarations_for_binding_traits(self):
- # A list of (builder_type, needs_runtime_cast)
- type_arguments = []
-
- for domain in self.domains_to_generate():
- declarations_to_generate = filter(lambda decl: self.type_needs_shape_assertions(decl.type), domain.type_declarations)
-
- for type_declaration in declarations_to_generate:
- for type_member in type_declaration.type_members:
- if isinstance(type_member.type, EnumType):
- type_arguments.append((CppGenerator.cpp_protocol_type_for_type_member(type_member, type_declaration), False))
-
- if isinstance(type_declaration.type, ObjectType):
- type_arguments.append((CppGenerator.cpp_protocol_type_for_type(type_declaration.type), Generator.type_needs_runtime_casts(type_declaration.type)))
-
- struct_keywords = ['struct']
- function_keywords = ['static void']
- export_macro = self.model().framework.setting('export_macro', None)
- if export_macro is not None:
- struct_keywords.append(export_macro)
- #function_keywords[1:1] = [export_macro]
-
- lines = []
- for argument in type_arguments:
- lines.append('template<> %s BindingTraits<%s> {' % (' '.join(struct_keywords), argument[0]))
- if argument[1]:
- lines.append('static RefPtr<%s> runtimeCast(RefPtr<Inspector::InspectorValue>&& value);' % argument[0])
- lines.append('#if !ASSERT_DISABLED')
- lines.append('%s assertValueHasExpectedType(Inspector::InspectorValue*);' % ' '.join(function_keywords))
- lines.append('#endif // !ASSERT_DISABLED')
- lines.append('};')
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py
deleted file mode 100755
index 2c263b504..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py
+++ /dev/null
@@ -1,183 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from cpp_generator_templates import CppGeneratorTemplates as CppTemplates
-from generator import Generator, ucfirst
-from models import AliasedType, ArrayType, EnumType, ObjectType
-
-log = logging.getLogger('global')
-
-
-class CppProtocolTypesImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorProtocolObjects.cpp"
-
- def generate_output(self):
- domains = self.domains_to_generate()
- self.calculate_types_requiring_shape_assertions(domains)
-
- secondary_headers = ['<wtf/text/CString.h>']
-
- header_args = {
- 'primaryInclude': '"InspectorProtocolObjects.h"',
- 'secondaryIncludes': "\n".join(['#include %s' % header for header in secondary_headers]),
- }
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(CppTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.append('namespace Protocol {')
- sections.append(self._generate_enum_mapping())
- sections.append(self._generate_open_field_names())
- builder_sections = map(self._generate_builders_for_domain, domains)
- sections.extend(filter(lambda section: len(section) > 0, builder_sections))
- sections.append('} // namespace Protocol')
- sections.append(Template(CppTemplates.ImplementationPostlude).substitute(None, **header_args))
-
- return "\n\n".join(sections)
-
- # Private methods.
-
- def _generate_enum_mapping(self):
- lines = []
- lines.append('static const char* const enum_constant_values[] = {')
- lines.extend([' "%s",' % enum_value for enum_value in self.assigned_enum_values()])
- lines.append('};')
- lines.append('')
- lines.append('String getEnumConstantValue(int code) {')
- lines.append(' return enum_constant_values[code];')
- lines.append('}')
- return '\n'.join(lines)
-
- def _generate_open_field_names(self):
- lines = []
- for domain in self.domains_to_generate():
- for type_declaration in filter(lambda decl: Generator.type_has_open_fields(decl.type), domain.type_declarations):
- for type_member in sorted(type_declaration.type_members, key=lambda member: member.member_name):
- field_name = '::'.join(['Inspector', 'Protocol', domain.domain_name, ucfirst(type_declaration.type_name), ucfirst(type_member.member_name)])
- lines.append('const char* %s = "%s";' % (field_name, type_member.member_name))
-
- return '\n'.join(lines)
-
- def _generate_builders_for_domain(self, domain):
- sections = []
- declarations_to_generate = filter(lambda decl: self.type_needs_shape_assertions(decl.type), domain.type_declarations)
-
- for type_declaration in declarations_to_generate:
- for type_member in type_declaration.type_members:
- if isinstance(type_member.type, EnumType):
- sections.append(self._generate_assertion_for_enum(type_member, type_declaration))
-
- if isinstance(type_declaration.type, ObjectType):
- sections.append(self._generate_assertion_for_object_declaration(type_declaration))
- if Generator.type_needs_runtime_casts(type_declaration.type):
- sections.append(self._generate_runtime_cast_for_object_declaration(type_declaration))
-
- return '\n\n'.join(sections)
-
- def _generate_runtime_cast_for_object_declaration(self, object_declaration):
- args = {
- 'objectType': CppGenerator.cpp_protocol_type_for_type(object_declaration.type)
- }
- return Template(CppTemplates.ProtocolObjectRuntimeCast).substitute(None, **args)
-
- def _generate_assertion_for_object_declaration(self, object_declaration):
- required_members = filter(lambda member: not member.is_optional, object_declaration.type_members)
- optional_members = filter(lambda member: member.is_optional, object_declaration.type_members)
- should_count_properties = not Generator.type_has_open_fields(object_declaration.type)
- lines = []
-
- lines.append('#if !ASSERT_DISABLED')
- lines.append('void BindingTraits<%s>::assertValueHasExpectedType(Inspector::InspectorValue* value)' % (CppGenerator.cpp_protocol_type_for_type(object_declaration.type)))
- lines.append("""{
- ASSERT_ARG(value, value);
- RefPtr<InspectorObject> object;
- bool castSucceeded = value->asObject(object);
- ASSERT_UNUSED(castSucceeded, castSucceeded);""")
- for type_member in required_members:
- args = {
- 'memberName': type_member.member_name,
- 'assertMethod': CppGenerator.cpp_assertion_method_for_type_member(type_member, object_declaration)
- }
-
- lines.append(""" {
- InspectorObject::iterator %(memberName)sPos = object->find(ASCIILiteral("%(memberName)s"));
- ASSERT(%(memberName)sPos != object->end());
- %(assertMethod)s(%(memberName)sPos->value.get());
- }""" % args)
-
- if should_count_properties:
- lines.append('')
- lines.append(' int foundPropertiesCount = %s;' % len(required_members))
-
- for type_member in optional_members:
- args = {
- 'memberName': type_member.member_name,
- 'assertMethod': CppGenerator.cpp_assertion_method_for_type_member(type_member, object_declaration)
- }
-
- lines.append(""" {
- InspectorObject::iterator %(memberName)sPos = object->find(ASCIILiteral("%(memberName)s"));
- if (%(memberName)sPos != object->end()) {
- %(assertMethod)s(%(memberName)sPos->value.get());""" % args)
-
- if should_count_properties:
- lines.append(' ++foundPropertiesCount;')
- lines.append(' }')
- lines.append(' }')
-
- if should_count_properties:
- lines.append(' if (foundPropertiesCount != object->size())')
- lines.append(' FATAL("Unexpected properties in object: %s\\n", object->toJSONString().ascii().data());')
- lines.append('}')
- lines.append('#endif // !ASSERT_DISABLED')
- return '\n'.join(lines)
-
- def _generate_assertion_for_enum(self, enum_member, object_declaration):
- lines = []
- lines.append('#if !ASSERT_DISABLED')
- lines.append('void %s(Inspector::InspectorValue* value)' % CppGenerator.cpp_assertion_method_for_type_member(enum_member, object_declaration))
- lines.append('{')
- lines.append(' ASSERT_ARG(value, value);')
- lines.append(' String result;')
- lines.append(' bool castSucceeded = value->asString(result);')
- lines.append(' ASSERT(castSucceeded);')
-
- assert_condition = ' || '.join(['result == "%s"' % enum_value for enum_value in enum_member.type.enum_values()])
- lines.append(' ASSERT(%s);' % assert_condition)
- lines.append('}')
- lines.append('#endif // !ASSERT_DISABLED')
-
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py
deleted file mode 100755
index 3392c7845..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_js_backend_commands.py
+++ /dev/null
@@ -1,137 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator, ucfirst
-from generator_templates import GeneratorTemplates as Templates
-from models import EnumType
-
-log = logging.getLogger('global')
-
-
-class JSBackendCommandsGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return "InspectorBackendCommands.js"
-
- def domains_to_generate(self):
- def should_generate_domain(domain):
- domain_enum_types = filter(lambda declaration: isinstance(declaration.type, EnumType), domain.type_declarations)
- return len(domain.commands) > 0 or len(domain.events) > 0 or len(domain_enum_types) > 0
-
- return filter(should_generate_domain, Generator.domains_to_generate(self))
-
- def generate_output(self):
- sections = []
- sections.append(self.generate_license())
- sections.extend(map(self.generate_domain, self.domains_to_generate()))
- return "\n\n".join(sections)
-
- def generate_domain(self, domain):
- lines = []
- args = {
- 'domain': domain.domain_name
- }
-
- lines.append('// %(domain)s.' % args)
-
- has_async_commands = any(map(lambda command: command.is_async, domain.commands))
- if len(domain.events) > 0 or has_async_commands:
- lines.append('InspectorBackend.register%(domain)sDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "%(domain)s");' % args)
-
- for declaration in domain.type_declarations:
- if declaration.type.is_enum():
- enum_args = {
- 'domain': domain.domain_name,
- 'enumName': declaration.type_name,
- 'enumMap': ", ".join(['%s: "%s"' % (Generator.stylized_name_for_enum_value(enum_value), enum_value) for enum_value in declaration.type.enum_values()])
- }
- lines.append('InspectorBackend.registerEnum("%(domain)s.%(enumName)s", {%(enumMap)s});' % enum_args)
-
- def is_anonymous_enum_member(type_member):
- return isinstance(type_member.type, EnumType) and type_member.type.is_anonymous
-
- for _member in filter(is_anonymous_enum_member, declaration.type_members):
- enum_args = {
- 'domain': domain.domain_name,
- 'enumName': '%s%s' % (declaration.type_name, ucfirst(_member.member_name)),
- 'enumMap': ", ".join(['%s: "%s"' % (Generator.stylized_name_for_enum_value(enum_value), enum_value) for enum_value in _member.type.enum_values()])
- }
- lines.append('InspectorBackend.registerEnum("%(domain)s.%(enumName)s", {%(enumMap)s});' % enum_args)
-
- def is_anonymous_enum_param(param):
- return isinstance(param.type, EnumType) and param.type.is_anonymous
-
- for event in domain.events:
- for param in filter(is_anonymous_enum_param, event.event_parameters):
- enum_args = {
- 'domain': domain.domain_name,
- 'enumName': '%s%s' % (ucfirst(event.event_name), ucfirst(param.parameter_name)),
- 'enumMap': ", ".join(['%s: "%s"' % (Generator.stylized_name_for_enum_value(enum_value), enum_value) for enum_value in param.type.enum_values()])
- }
- lines.append('InspectorBackend.registerEnum("%(domain)s.%(enumName)s", {%(enumMap)s});' % enum_args)
-
- event_args = {
- 'domain': domain.domain_name,
- 'eventName': event.event_name,
- 'params': ", ".join(['"%s"' % parameter.parameter_name for parameter in event.event_parameters])
- }
- lines.append('InspectorBackend.registerEvent("%(domain)s.%(eventName)s", [%(params)s]);' % event_args)
-
- for command in domain.commands:
- def generate_parameter_object(parameter):
- optional_string = "true" if parameter.is_optional else "false"
- pairs = []
- pairs.append('"name": "%s"' % parameter.parameter_name)
- pairs.append('"type": "%s"' % Generator.js_name_for_parameter_type(parameter.type))
- pairs.append('"optional": %s' % optional_string)
- return "{%s}" % ", ".join(pairs)
-
- command_args = {
- 'domain': domain.domain_name,
- 'commandName': command.command_name,
- 'callParams': ", ".join([generate_parameter_object(parameter) for parameter in command.call_parameters]),
- 'returnParams': ", ".join(['"%s"' % parameter.parameter_name for parameter in command.return_parameters]),
- }
- lines.append('InspectorBackend.registerCommand("%(domain)s.%(commandName)s", [%(callParams)s], [%(returnParams)s]);' % command_args)
-
- if domain.commands or domain.events:
- activate_args = {
- 'domain': domain.domain_name,
- 'availability': domain.availability,
- }
- if domain.availability:
- lines.append('InspectorBackend.activateDomain("%(domain)s", "%(availability)s");' % activate_args)
- else:
- lines.append('InspectorBackend.activateDomain("%(domain)s");' % activate_args)
-
- return "\n".join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py
deleted file mode 100755
index 29b38e887..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-import re
-from string import Template
-
-from cpp_generator import CppGenerator
-from generator import Generator
-from models import Frameworks
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCBackendDispatcherHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sBackendDispatchers.h' % ObjCGenerator.OBJC_PREFIX
-
- def domains_to_generate(self):
- return filter(ObjCGenerator.should_generate_domain_command_handler_filter(self.model()), Generator.domains_to_generate(self))
-
- def generate_output(self):
- headers = [
- '<JavaScriptCore/InspectorAlternateBackendDispatchers.h>',
- '<wtf/RetainPtr.h>',
- ]
-
- header_args = {
- 'headerGuardString': re.sub('\W+', '_', self.output_filename()),
- 'includes': '\n'.join(['#include ' + header for header in headers]),
- 'forwardDeclarations': self._generate_objc_forward_declarations(),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.BackendDispatcherHeaderPrelude).substitute(None, **header_args))
- sections.extend(map(self._generate_objc_handler_declarations_for_domain, domains))
- sections.append(Template(ObjCTemplates.BackendDispatcherHeaderPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_objc_forward_declarations(self):
- lines = []
- for domain in self.domains_to_generate():
- if domain.commands:
- lines.append('@protocol %s%sDomainHandler;' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name))
- return '\n'.join(lines)
-
- def _generate_objc_handler_declarations_for_domain(self, domain):
- if not domain.commands:
- return ''
-
- command_declarations = []
- for command in domain.commands:
- command_declarations.append(self._generate_objc_handler_declaration_for_command(command))
-
- handler_args = {
- 'domainName': domain.domain_name,
- 'commandDeclarations': '\n'.join(command_declarations),
- 'objcPrefix': ObjCGenerator.OBJC_PREFIX,
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(ObjCTemplates.BackendDispatcherHeaderDomainHandlerObjCDeclaration).substitute(None, **handler_args))
-
- def _generate_objc_handler_declaration_for_command(self, command):
- lines = []
- parameters = ['long callId']
- for _parameter in command.call_parameters:
- parameters.append('%s in_%s' % (CppGenerator.cpp_type_for_unchecked_formal_in_parameter(_parameter), _parameter.parameter_name))
-
- command_args = {
- 'commandName': command.command_name,
- 'parameters': ', '.join(parameters),
- }
- lines.append(' virtual void %(commandName)s(%(parameters)s) override;' % command_args)
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py
deleted file mode 100755
index 27bdd4a9b..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-import re
-from string import Template
-
-from cpp_generator import CppGenerator
-from generator import Generator
-from models import PrimitiveType, EnumType, AliasedType, Frameworks
-from objc_generator import ObjCTypeCategory, ObjCGenerator, join_type_and_name
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCConfigurationImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sBackendDispatchers.mm' % ObjCGenerator.OBJC_PREFIX
-
- def domains_to_generate(self):
- return filter(ObjCGenerator.should_generate_domain_command_handler_filter(self.model()), Generator.domains_to_generate(self))
-
- def generate_output(self):
- secondary_headers = [
- '"%sInternal.h"' % ObjCGenerator.OBJC_PREFIX,
- '"%sEnumConversionHelpers.h"' % ObjCGenerator.OBJC_PREFIX,
- '<JavaScriptCore/InspectorFrontendChannel.h>',
- '<JavaScriptCore/InspectorValues.h>',
- ]
-
- header_args = {
- 'primaryInclude': '"%sBackendDispatchers.h"' % ObjCGenerator.OBJC_PREFIX,
- 'secondaryIncludes': '\n'.join(['#include %s' % header for header in secondary_headers]),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.BackendDispatcherImplementationPrelude).substitute(None, **header_args))
- sections.extend(map(self._generate_handler_implementation_for_domain, domains))
- sections.append(Template(ObjCTemplates.BackendDispatcherImplementationPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_handler_implementation_for_domain(self, domain):
- if not domain.commands:
- return ''
-
- command_declarations = []
- for command in domain.commands:
- command_declarations.append(self._generate_handler_implementation_for_command(domain, command))
-
- return '\n'.join(command_declarations)
-
- def _generate_handler_implementation_for_command(self, domain, command):
- lines = []
- parameters = ['long callId']
- for parameter in command.call_parameters:
- parameters.append('%s in_%s' % (CppGenerator.cpp_type_for_unchecked_formal_in_parameter(parameter), parameter.parameter_name))
-
- command_args = {
- 'domainName': domain.domain_name,
- 'commandName': command.command_name,
- 'parameters': ', '.join(parameters),
- 'successCallback': self._generate_success_block_for_command(domain, command),
- 'conversions': self._generate_conversions_for_command(domain, command),
- 'invocation': self._generate_invocation_for_command(domain, command),
- }
-
- return self.wrap_with_guard_for_domain(domain, Template(ObjCTemplates.BackendDispatcherHeaderDomainHandlerImplementation).substitute(None, **command_args))
-
- def _generate_success_block_for_command(self, domain, command):
- lines = []
-
- if command.return_parameters:
- success_block_parameters = []
- for parameter in command.return_parameters:
- objc_type = ObjCGenerator.objc_type_for_param(domain, command.command_name, parameter)
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- success_block_parameters.append(join_type_and_name(objc_type, var_name))
- lines.append(' id successCallback = ^(%s) {' % ', '.join(success_block_parameters))
- else:
- lines.append(' id successCallback = ^{')
-
- if command.return_parameters:
- lines.append(' Ref<InspectorObject> resultObject = InspectorObject::create();')
-
- required_pointer_parameters = filter(lambda parameter: not parameter.is_optional and ObjCGenerator.is_type_objc_pointer_type(parameter.type), command.return_parameters)
- for parameter in required_pointer_parameters:
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- lines.append(' THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(%s, @"%s");' % (var_name, var_name))
- objc_array_class = ObjCGenerator.objc_class_for_array_type(parameter.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
-
- optional_pointer_parameters = filter(lambda parameter: parameter.is_optional and ObjCGenerator.is_type_objc_pointer_type(parameter.type), command.return_parameters)
- for parameter in optional_pointer_parameters:
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- lines.append(' THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(%s, @"%s");' % (var_name, var_name))
- objc_array_class = ObjCGenerator.objc_class_for_array_type(parameter.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_OPTIONAL_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
-
- for parameter in command.return_parameters:
- keyed_set_method = CppGenerator.cpp_setter_method_for_type(parameter.type)
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- var_expression = '*%s' % var_name if parameter.is_optional else var_name
- export_expression = ObjCGenerator.objc_protocol_export_expression_for_variable(parameter.type, var_expression)
- if not parameter.is_optional:
- lines.append(' resultObject->%s(ASCIILiteral("%s"), %s);' % (keyed_set_method, parameter.parameter_name, export_expression))
- else:
- lines.append(' if (%s)' % var_name)
- lines.append(' resultObject->%s(ASCIILiteral("%s"), %s);' % (keyed_set_method, parameter.parameter_name, export_expression))
- lines.append(' backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());')
- else:
- lines.append(' backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());')
-
- lines.append(' };')
- return '\n'.join(lines)
-
- def _generate_conversions_for_command(self, domain, command):
- lines = []
- if command.call_parameters:
- lines.append('')
-
- def in_param_expression(param_name, parameter):
- _type = parameter.type
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through to enum or primitive.
- if isinstance(_type, EnumType):
- _type = _type.primitive_type # Fall through to primitive.
- if isinstance(_type, PrimitiveType):
- if _type.raw_name() in ['array', 'any', 'object']:
- return '&%s' % param_name if not parameter.is_optional else param_name
- return '*%s' % param_name if parameter.is_optional else param_name
- return '&%s' % param_name if not parameter.is_optional else param_name
-
- for parameter in command.call_parameters:
- in_param_name = 'in_%s' % parameter.parameter_name
- objc_in_param_name = 'o_%s' % in_param_name
- objc_type = ObjCGenerator.objc_type_for_param(domain, command.command_name, parameter, False)
- param_expression = in_param_expression(in_param_name, parameter)
- import_expression = ObjCGenerator.objc_protocol_import_expression_for_parameter(param_expression, domain, command.command_name, parameter)
- if not parameter.is_optional:
- lines.append(' %s = %s;' % (join_type_and_name(objc_type, objc_in_param_name), import_expression))
- else:
- lines.append(' %s;' % join_type_and_name(objc_type, objc_in_param_name))
- lines.append(' if (%s)' % in_param_name)
- lines.append(' %s = %s;' % (objc_in_param_name, import_expression))
-
- if lines:
- lines.append('')
- return '\n'.join(lines)
-
- def _generate_invocation_for_command(self, domain, command):
- pairs = []
- pairs.append('WithErrorCallback:errorCallback')
- pairs.append('successCallback:successCallback')
- for parameter in command.call_parameters:
- in_param_name = 'in_%s' % parameter.parameter_name
- objc_in_param_name = 'o_%s' % in_param_name
- if not parameter.is_optional:
- pairs.append('%s:%s' % (parameter.parameter_name, objc_in_param_name))
- else:
- optional_expression = '(%s ? &%s : nil)' % (in_param_name, objc_in_param_name)
- pairs.append('%s:%s' % (parameter.parameter_name, optional_expression))
- return ' [m_delegate %s%s];' % (command.command_name, ' '.join(pairs))
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_header.py
deleted file mode 100755
index 2002227d9..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_header.py
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCConfigurationHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sConfiguration.h' % ObjCGenerator.OBJC_PREFIX
-
- def generate_output(self):
- headers = [
- '"%s.h"' % ObjCGenerator.OBJC_PREFIX,
- ]
-
- header_args = {
- 'includes': '\n'.join(['#import ' + header for header in headers]),
- }
-
- self._command_filter = ObjCGenerator.should_generate_domain_command_handler_filter(self.model())
- self._event_filter = ObjCGenerator.should_generate_domain_event_dispatcher_filter(self.model())
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.GenericHeaderPrelude).substitute(None, **header_args))
- sections.append(self._generate_configuration_interface_for_domains(domains))
- sections.append(Template(ObjCTemplates.GenericHeaderPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_configuration_interface_for_domains(self, domains):
- lines = []
- lines.append('__attribute__((visibility ("default")))')
- lines.append('@interface RWIProtocolConfiguration : NSObject')
- for domain in domains:
- lines.extend(self._generate_properties_for_domain(domain))
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_properties_for_domain(self, domain):
- property_args = {
- 'objcPrefix': ObjCGenerator.OBJC_PREFIX,
- 'domainName': domain.domain_name,
- 'variableNamePrefix': ObjCGenerator.variable_name_prefix_for_domain(domain),
- }
-
- lines = []
- if domain.commands and self._command_filter(domain):
- lines.append(Template(ObjCTemplates.ConfigurationCommandProperty).substitute(None, **property_args))
- if domain.events and self._event_filter(domain):
- lines.append(Template(ObjCTemplates.ConfigurationEventProperty).substitute(None, **property_args))
- return lines
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_implementation.py
deleted file mode 100755
index 53205cb9d..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_configuration_implementation.py
+++ /dev/null
@@ -1,150 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCBackendDispatcherImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sConfiguration.mm' % ObjCGenerator.OBJC_PREFIX
-
- def generate_output(self):
- secondary_headers = [
- '"%sInternal.h"' % ObjCGenerator.OBJC_PREFIX,
- '"%sBackendDispatchers.h"' % ObjCGenerator.OBJC_PREFIX,
- '<JavaScriptCore/AlternateDispatchableAgent.h>',
- '<JavaScriptCore/AugmentableInspectorController.h>',
- '<JavaScriptCore/InspectorAlternateBackendDispatchers.h>',
- '<JavaScriptCore/InspectorBackendDispatchers.h>',
- ]
-
- header_args = {
- 'primaryInclude': '"%sConfiguration.h"' % ObjCGenerator.OBJC_PREFIX,
- 'secondaryIncludes': '\n'.join(['#import %s' % header for header in secondary_headers]),
- }
-
- self._command_filter = ObjCGenerator.should_generate_domain_command_handler_filter(self.model())
- self._event_filter = ObjCGenerator.should_generate_domain_event_dispatcher_filter(self.model())
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.append(self._generate_configuration_implementation_for_domains(domains))
- sections.append(Template(ObjCTemplates.ImplementationPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_configuration_implementation_for_domains(self, domains):
- lines = []
- lines.append('@implementation RWIProtocolConfiguration')
- lines.append('{')
- lines.append(' AugmentableInspectorController* _controller;')
- lines.extend(self._generate_ivars(domains))
- lines.append('}')
- lines.append('')
- lines.append('- (instancetype)initWithController:(AugmentableInspectorController*)controller')
- lines.append('{')
- lines.append(' self = [super init];')
- lines.append(' if (!self)')
- lines.append(' return nil;')
- lines.append(' ASSERT(controller);')
- lines.append(' _controller = controller;')
- lines.append(' return self;')
- lines.append('}')
- lines.append('')
- lines.extend(self._generate_dealloc(domains))
- lines.append('')
- for domain in domains:
- if domain.commands and self._command_filter(domain):
- lines.append(self._generate_handler_setter_for_domain(domain))
- lines.append('')
- if domain.events and self._event_filter(domain):
- lines.append(self._generate_event_dispatcher_getter_for_domain(domain))
- lines.append('')
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_ivars(self, domains):
- lines = []
- for domain in domains:
- if domain.commands and self._command_filter(domain):
- objc_class_name = '%s%sDomainHandler' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- ivar_name = '_%sHandler' % ObjCGenerator.variable_name_prefix_for_domain(domain)
- lines.append(' id<%s> %s;' % (objc_class_name, ivar_name))
- if domain.events and self._event_filter(domain):
- objc_class_name = '%s%sDomainEventDispatcher' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- ivar_name = '_%sEventDispatcher' % ObjCGenerator.variable_name_prefix_for_domain(domain)
- lines.append(' %s *%s;' % (objc_class_name, ivar_name))
- return lines
-
- def _generate_dealloc(self, domains):
- lines = []
- lines.append('- (void)dealloc')
- lines.append('{')
- for domain in domains:
- if domain.commands and self._command_filter(domain):
- lines.append(' [_%sHandler release];' % ObjCGenerator.variable_name_prefix_for_domain(domain))
- if domain.events and self._event_filter(domain):
- lines.append(' [_%sEventDispatcher release];' % ObjCGenerator.variable_name_prefix_for_domain(domain))
- lines.append(' [super dealloc];')
- lines.append('}')
- return lines
-
- def _generate_handler_setter_for_domain(self, domain):
- setter_args = {
- 'objcPrefix': ObjCGenerator.OBJC_PREFIX,
- 'domainName': domain.domain_name,
- 'variableNamePrefix': ObjCGenerator.variable_name_prefix_for_domain(domain),
- }
- return Template(ObjCTemplates.ConfigurationCommandPropertyImplementation).substitute(None, **setter_args)
-
- def _generate_event_dispatcher_getter_for_domain(self, domain):
- getter_args = {
- 'objcPrefix': ObjCGenerator.OBJC_PREFIX,
- 'domainName': domain.domain_name,
- 'variableNamePrefix': ObjCGenerator.variable_name_prefix_for_domain(domain),
- }
- return Template(ObjCTemplates.ConfigurationGetterImplementation).substitute(None, **getter_args)
-
- def _variable_name_prefix_for_domain(self, domain):
- domain_name = domain.domain_name
- if domain_name.startswith('DOM'):
- return 'dom' + domain_name[3:]
- if domain_name.startswith('CSS'):
- return 'css' + domain_name[3:]
- return domain_name[:1].lower() + domain_name[1:]
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_conversion_helpers.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_conversion_helpers.py
deleted file mode 100755
index c31e991e3..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_conversion_helpers.py
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator
-from models import EnumType
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-def add_newline(lines):
- if lines and lines[-1] == '':
- return
- lines.append('')
-
-
-class ObjCConversionHelpersGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sEnumConversionHelpers.h' % ObjCGenerator.OBJC_PREFIX
-
- def domains_to_generate(self):
- return filter(ObjCGenerator.should_generate_domain_types_filter(self.model()), Generator.domains_to_generate(self))
-
- def generate_output(self):
- headers = [
- '"%sArrayConversionHelpers.h"' % ObjCGenerator.OBJC_PREFIX,
- ]
-
- header_args = {
- 'includes': '\n'.join(['#import ' + header for header in headers]),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.ConversionHelpersPrelude).substitute(None, **header_args))
- sections.append(Template(ObjCTemplates.ConversionHelpersStandard).substitute(None))
- sections.extend(map(self._generate_enum_conversion_functions, domains))
- sections.append(Template(ObjCTemplates.ConversionHelpersPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_enum_conversion_functions(self, domain):
- lines = []
-
- # Type enums and member enums.
- for declaration in domain.type_declarations:
- if isinstance(declaration.type, EnumType):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_conversion_for_declaration(domain, declaration))
- else:
- for member in declaration.type_members:
- if (isinstance(member.type, EnumType) and member.type.is_anonymous):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_conversion_for_member(domain, declaration, member))
-
- # Anonymous command enums.
- for command in domain.commands:
- for parameter in command.call_parameters:
- if (isinstance(parameter.type, EnumType) and parameter.type.is_anonymous):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_conversion_for_parameter(domain, command.command_name, parameter))
- for parameter in command.return_parameters:
- if (isinstance(parameter.type, EnumType) and parameter.type.is_anonymous):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_conversion_for_parameter(domain, command.command_name, parameter))
-
- # Anonymous event enums.
- for event in domain.events:
- for parameter in event.event_parameters:
- if (isinstance(parameter.type, EnumType) and parameter.type.is_anonymous):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_conversion_for_parameter(domain, event.event_name, parameter))
-
- return '\n'.join(lines)
-
- def _generate_anonymous_enum_conversion_for_declaration(self, domain, declaration):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_declaration(declaration)
- enum_values = declaration.type.enum_values()
- lines = []
- lines.append(self._generate_enum_objc_to_protocol_string(objc_enum_name, enum_values))
- lines.append(self._generate_enum_from_protocol_string(objc_enum_name, enum_values))
- return '\n\n'.join(lines)
-
- def _generate_anonymous_enum_conversion_for_member(self, domain, declaration, member):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_member(declaration, member)
- enum_values = member.type.enum_values()
- lines = []
- lines.append(self._generate_enum_objc_to_protocol_string(objc_enum_name, enum_values))
- lines.append(self._generate_enum_from_protocol_string(objc_enum_name, enum_values))
- return '\n\n'.join(lines)
-
- def _generate_anonymous_enum_conversion_for_parameter(self, domain, event_or_command_name, parameter):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_parameter(domain, event_or_command_name, parameter)
- enum_values = parameter.type.enum_values()
- lines = []
- lines.append(self._generate_enum_objc_to_protocol_string(objc_enum_name, enum_values))
- lines.append(self._generate_enum_from_protocol_string(objc_enum_name, enum_values))
- return '\n\n'.join(lines)
-
- def _generate_enum_objc_to_protocol_string(self, objc_enum_name, enum_values):
- lines = []
- lines.append('inline String toProtocolString(%s value)' % objc_enum_name)
- lines.append('{')
- lines.append(' switch(value) {')
- for enum_value in enum_values:
- lines.append(' case %s%s:' % (objc_enum_name, Generator.stylized_name_for_enum_value(enum_value)))
- lines.append(' return ASCIILiteral("%s");' % enum_value)
- lines.append(' }')
- lines.append('}')
- return '\n'.join(lines)
-
- def _generate_enum_from_protocol_string(self, objc_enum_name, enum_values):
- lines = []
- lines.append('template<>')
- lines.append('inline %s fromProtocolString(const String& value)' % objc_enum_name)
- lines.append('{')
- for enum_value in enum_values:
- lines.append(' if (value == "%s")' % enum_value)
- lines.append(' return %s%s;' % (objc_enum_name, Generator.stylized_name_for_enum_value(enum_value)))
- lines.append(' ASSERT_NOT_REACHED();')
- lines.append(' return %s%s;' % (objc_enum_name, Generator.stylized_name_for_enum_value(enum_values[0])))
- lines.append('}')
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py
deleted file mode 100755
index fb2de4f61..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_frontend_dispatcher_implementation.py
+++ /dev/null
@@ -1,157 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from cpp_generator import CppGenerator
-from generator import Generator, ucfirst
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCFrontendDispatcherImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sEventDispatchers.mm' % ObjCGenerator.OBJC_PREFIX
-
- def domains_to_generate(self):
- return filter(ObjCGenerator.should_generate_domain_event_dispatcher_filter(self.model()), Generator.domains_to_generate(self))
-
- def generate_output(self):
- secondary_headers = [
- '"%sEnumConversionHelpers.h"' % ObjCGenerator.OBJC_PREFIX,
- '<JavaScriptCore/InspectorFrontendChannel.h>',
- '<JavaScriptCore/InspectorValues.h>',
- ]
-
- header_args = {
- 'primaryInclude': '"%sInternal.h"' % ObjCGenerator.OBJC_PREFIX,
- 'secondaryIncludes': '\n'.join(['#import %s' % header for header in secondary_headers]),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.extend(map(self._generate_event_dispatcher_implementations, domains))
- sections.append(Template(ObjCTemplates.ImplementationPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_event_dispatcher_implementations(self, domain):
- if not domain.events:
- return ''
-
- lines = []
- objc_name = '%s%sDomainEventDispatcher' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- lines.append('@implementation %s' % objc_name)
- lines.append('{')
- lines.append(' AugmentableInspectorController* _controller;')
- lines.append('}')
- lines.append('')
- lines.append('- (instancetype)initWithController:(AugmentableInspectorController*)controller;')
- lines.append('{')
- lines.append(' self = [super init];')
- lines.append(' if (!self)')
- lines.append(' return nil;')
- lines.append(' ASSERT(controller);')
- lines.append(' _controller = controller;')
- lines.append(' return self;')
- lines.append('}')
- lines.append('')
- for event in domain.events:
- lines.append(self._generate_event(domain, event))
- lines.append('')
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_event(self, domain, event):
- lines = []
- lines.append(self._generate_event_signature(domain, event))
- lines.append('{')
- lines.append(' FrontendChannel* frontendChannel = _controller->frontendChannel();')
- lines.append(' if (!frontendChannel)')
- lines.append(' return;')
- lines.append('')
-
- required_pointer_parameters = filter(lambda parameter: not parameter.is_optional and ObjCGenerator.is_type_objc_pointer_type(parameter.type), event.event_parameters)
- for parameter in required_pointer_parameters:
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- lines.append(' THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(%s, @"%s");' % (var_name, var_name))
- objc_array_class = ObjCGenerator.objc_class_for_array_type(parameter.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
-
- optional_pointer_parameters = filter(lambda parameter: parameter.is_optional and ObjCGenerator.is_type_objc_pointer_type(parameter.type), event.event_parameters)
- for parameter in optional_pointer_parameters:
- var_name = ObjCGenerator.identifier_to_objc_identifier(parameter.parameter_name)
- lines.append(' THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(%s, @"%s");' % (var_name, var_name))
- objc_array_class = ObjCGenerator.objc_class_for_array_type(parameter.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_OPTIONAL_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
-
- if required_pointer_parameters or optional_pointer_parameters:
- lines.append('')
-
- lines.append(' Ref<InspectorObject> jsonMessage = InspectorObject::create();')
- lines.append(' jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("%s.%s"));' % (domain.domain_name, event.event_name))
- if event.event_parameters:
- lines.extend(self._generate_event_out_parameters(domain, event))
- lines.append(' frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());')
- lines.append('}')
- return '\n'.join(lines)
-
- def _generate_event_signature(self, domain, event):
- if not event.event_parameters:
- return '- (void)%s' % event.event_name
- pairs = []
- for parameter in event.event_parameters:
- param_name = parameter.parameter_name
- pairs.append('%s:(%s)%s' % (param_name, ObjCGenerator.objc_type_for_param(domain, event.event_name, parameter), param_name))
- pairs[0] = ucfirst(pairs[0])
- return '- (void)%sWith%s' % (event.event_name, ' '.join(pairs))
-
- def _generate_event_out_parameters(self, domain, event):
- lines = []
- lines.append(' Ref<InspectorObject> paramsObject = InspectorObject::create();')
- for parameter in event.event_parameters:
- keyed_set_method = CppGenerator.cpp_setter_method_for_type(parameter.type)
- var_name = parameter.parameter_name
- safe_var_name = '(*%s)' % var_name if parameter.is_optional else var_name
- export_expression = ObjCGenerator.objc_protocol_export_expression_for_variable(parameter.type, safe_var_name)
- if not parameter.is_optional:
- lines.append(' paramsObject->%s(ASCIILiteral("%s"), %s);' % (keyed_set_method, parameter.parameter_name, export_expression))
- else:
- lines.append(' if (%s)' % (parameter.parameter_name))
- lines.append(' paramsObject->%s(ASCIILiteral("%s"), %s);' % (keyed_set_method, parameter.parameter_name, export_expression))
- lines.append(' jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));')
- return lines
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_header.py
deleted file mode 100755
index 1d3751f35..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_header.py
+++ /dev/null
@@ -1,229 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator, ucfirst
-from models import ObjectType, EnumType
-from objc_generator import ObjCGenerator, join_type_and_name
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-def add_newline(lines):
- if lines and lines[-1] == '':
- return
- lines.append('')
-
-
-class ObjCHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%s.h' % ObjCGenerator.OBJC_PREFIX
-
- def generate_output(self):
- headers = set([
- '<WebInspector/RWIProtocolJSONObject.h>',
- ])
-
- header_args = {
- 'includes': '\n'.join(['#import ' + header for header in sorted(headers)]),
- }
-
- domains = self.domains_to_generate()
- type_domains = filter(ObjCGenerator.should_generate_domain_types_filter(self.model()), domains)
- command_domains = filter(ObjCGenerator.should_generate_domain_command_handler_filter(self.model()), domains)
- event_domains = filter(ObjCGenerator.should_generate_domain_event_dispatcher_filter(self.model()), domains)
-
- # FIXME: <https://webkit.org/b/138222> Web Inspector: Reduce unnecessary enums/types generated in ObjC Protocol Interfaces
- # Currently we generate enums/types for all types in the type_domains. For the built-in
- # JSC domains (Debugger, Runtime) this produces extra unused types. We only need to
- # generate these types if they are referenced by the command_domains or event_domains.
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.HeaderPrelude).substitute(None, **header_args))
- sections.append('\n'.join(filter(None, map(self._generate_forward_declarations, type_domains))))
- sections.append('\n'.join(filter(None, map(self._generate_enums, type_domains))))
- sections.append('\n'.join(filter(None, map(self._generate_types, type_domains))))
- sections.append('\n\n'.join(filter(None, map(self._generate_command_protocols, command_domains))))
- sections.append('\n\n'.join(filter(None, map(self._generate_event_interfaces, event_domains))))
- sections.append(Template(ObjCTemplates.HeaderPostlude).substitute(None))
- return '\n\n'.join(sections)
-
- def _generate_forward_declarations(self, domain):
- lines = []
- for declaration in domain.type_declarations:
- if (isinstance(declaration.type, ObjectType)):
- objc_name = ObjCGenerator.objc_name_for_type(declaration.type)
- lines.append('@class %s;' % objc_name)
- return '\n'.join(lines)
-
- def _generate_enums(self, domain):
- lines = []
-
- # Type enums and member enums.
- for declaration in domain.type_declarations:
- if isinstance(declaration.type, EnumType):
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_for_declaration(domain, declaration))
- else:
- for member in declaration.type_members:
- if isinstance(member.type, EnumType) and member.type.is_anonymous:
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_for_member(domain, declaration, member))
-
- # Anonymous command enums.
- for command in domain.commands:
- for parameter in command.call_parameters:
- if isinstance(parameter.type, EnumType) and parameter.type.is_anonymous:
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_for_parameter(domain, command.command_name, parameter))
- for parameter in command.return_parameters:
- if isinstance(parameter.type, EnumType) and parameter.type.is_anonymous:
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_for_parameter(domain, command.command_name, parameter))
-
- # Anonymous event enums.
- for event in domain.events:
- for parameter in event.event_parameters:
- if isinstance(parameter.type, EnumType) and parameter.type.is_anonymous:
- add_newline(lines)
- lines.append(self._generate_anonymous_enum_for_parameter(domain, event.event_name, parameter))
-
- return '\n'.join(lines)
-
- def _generate_types(self, domain):
- lines = []
- # Type interfaces.
- for declaration in domain.type_declarations:
- if isinstance(declaration.type, ObjectType):
- add_newline(lines)
- lines.append(self._generate_type_interface(domain, declaration))
- return '\n'.join(lines)
-
- def _generate_anonymous_enum_for_declaration(self, domain, declaration):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_declaration(declaration)
- return self._generate_enum(objc_enum_name, declaration.type.enum_values())
-
- def _generate_anonymous_enum_for_member(self, domain, declaration, member):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_member(declaration, member)
- return self._generate_enum(objc_enum_name, member.type.enum_values())
-
- def _generate_anonymous_enum_for_parameter(self, domain, event_or_command_name, parameter):
- objc_enum_name = ObjCGenerator.objc_enum_name_for_anonymous_enum_parameter(domain, event_or_command_name, parameter)
- return self._generate_enum(objc_enum_name, parameter.type.enum_values())
-
- def _generate_enum(self, enum_name, enum_values):
- lines = []
- lines.append('typedef NS_ENUM(NSInteger, %s) {' % enum_name)
- for enum_value in enum_values:
- lines.append(' %s%s,' % (enum_name, Generator.stylized_name_for_enum_value(enum_value)))
- lines.append('};')
- return '\n'.join(lines)
-
- def _generate_type_interface(self, domain, declaration):
- lines = []
- objc_name = ObjCGenerator.objc_name_for_type(declaration.type)
- lines.append('__attribute__((visibility ("default")))')
- lines.append('@interface %s : %s' % (objc_name, ObjCGenerator.OBJC_JSON_OBJECT_BASE))
- required_members = filter(lambda member: not member.is_optional, declaration.type_members)
- optional_members = filter(lambda member: member.is_optional, declaration.type_members)
- if required_members:
- lines.append(self._generate_init_method_for_required_members(domain, declaration, required_members))
- for member in required_members:
- lines.append('/* required */ ' + self._generate_member_property(declaration, member))
- for member in optional_members:
- lines.append('/* optional */ ' + self._generate_member_property(declaration, member))
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_init_method_for_required_members(self, domain, declaration, required_members):
- pairs = []
- for member in required_members:
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- pairs.append('%s:(%s)%s' % (var_name, objc_type, var_name))
- pairs[0] = ucfirst(pairs[0])
- return '- (instancetype)initWith%s;' % ' '.join(pairs)
-
- def _generate_member_property(self, declaration, member):
- accessor_type = ObjCGenerator.objc_accessor_type_for_member(member)
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- return '@property (nonatomic, %s) %s;' % (accessor_type, join_type_and_name(objc_type, ObjCGenerator.identifier_to_objc_identifier(member.member_name)))
-
- def _generate_command_protocols(self, domain):
- lines = []
- if domain.commands:
- objc_name = '%s%sDomainHandler' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- lines.append('@protocol %s <NSObject>' % objc_name)
- lines.append('@required')
- for command in domain.commands:
- lines.append(self._generate_single_command_protocol(domain, command))
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_single_command_protocol(self, domain, command):
- pairs = []
- pairs.append('ErrorCallback:(void(^)(NSString *error))errorCallback')
- pairs.append('successCallback:(%s)successCallback' % self._callback_block_for_command(domain, command))
- for parameter in command.call_parameters:
- param_name = parameter.parameter_name
- pairs.append('%s:(%s)%s' % (param_name, ObjCGenerator.objc_type_for_param(domain, command.command_name, parameter), param_name))
- return '- (void)%sWith%s;' % (command.command_name, ' '.join(pairs))
-
- def _callback_block_for_command(self, domain, command):
- pairs = []
- for parameter in command.return_parameters:
- pairs.append(join_type_and_name(ObjCGenerator.objc_type_for_param(domain, command.command_name, parameter), parameter.parameter_name))
- return 'void(^)(%s)' % ', '.join(pairs)
-
- def _generate_event_interfaces(self, domain):
- lines = []
- if domain.events:
- objc_name = '%s%sDomainEventDispatcher' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- lines.append('__attribute__((visibility ("default")))')
- lines.append('@interface %s : NSObject' % objc_name)
- for event in domain.events:
- lines.append(self._generate_single_event_interface(domain, event))
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_single_event_interface(self, domain, event):
- if not event.event_parameters:
- return '- (void)%s;' % event.event_name
- pairs = []
- for parameter in event.event_parameters:
- param_name = parameter.parameter_name
- pairs.append('%s:(%s)%s' % (param_name, ObjCGenerator.objc_type_for_param(domain, event.event_name, parameter), param_name))
- pairs[0] = ucfirst(pairs[0])
- return '- (void)%sWith%s;' % (event.event_name, ' '.join(pairs))
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_internal_header.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_internal_header.py
deleted file mode 100755
index 2501ad324..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_internal_header.py
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator, ucfirst
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-class ObjCInternalHeaderGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sInternal.h' % ObjCGenerator.OBJC_PREFIX
-
- def generate_output(self):
- headers = set([
- '"%s.h"' % ObjCGenerator.OBJC_PREFIX,
- '"RWIProtocolJSONObjectInternal.h"',
- '<JavaScriptCore/InspectorValues.h>',
- '<JavaScriptCore/AugmentableInspectorController.h>',
- ])
-
- header_args = {
- 'includes': '\n'.join(['#import ' + header for header in sorted(headers)]),
- }
-
- domains = self.domains_to_generate()
- event_domains = filter(ObjCGenerator.should_generate_domain_event_dispatcher_filter(self.model()), domains)
-
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.GenericHeaderPrelude).substitute(None, **header_args))
- sections.append('\n\n'.join(filter(None, map(self._generate_event_dispatcher_private_interfaces, event_domains))))
- sections.append(Template(ObjCTemplates.GenericHeaderPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def _generate_event_dispatcher_private_interfaces(self, domain):
- lines = []
- if domain.events:
- objc_name = '%s%sDomainEventDispatcher' % (ObjCGenerator.OBJC_PREFIX, domain.domain_name)
- lines.append('@interface %s (Private)' % objc_name)
- lines.append('- (instancetype)initWithController:(Inspector::AugmentableInspectorController*)controller;')
- lines.append('@end')
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_types_implementation.py b/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_types_implementation.py
deleted file mode 100755
index 95b57f671..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generate_objc_protocol_types_implementation.py
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-
-import logging
-import string
-from string import Template
-
-from generator import Generator, ucfirst
-from models import ObjectType
-from objc_generator import ObjCGenerator
-from objc_generator_templates import ObjCGeneratorTemplates as ObjCTemplates
-
-log = logging.getLogger('global')
-
-
-def add_newline(lines):
- if lines and lines[-1] == '':
- return
- lines.append('')
-
-
-class ObjCProtocolTypesImplementationGenerator(Generator):
- def __init__(self, model, input_filepath):
- Generator.__init__(self, model, input_filepath)
-
- def output_filename(self):
- return '%sTypes.mm' % ObjCGenerator.OBJC_PREFIX
-
- def domains_to_generate(self):
- return filter(ObjCGenerator.should_generate_domain_types_filter(self.model()), Generator.domains_to_generate(self))
-
- def generate_output(self):
- secondary_headers = [
- '"%sEnumConversionHelpers.h"' % ObjCGenerator.OBJC_PREFIX,
- '<JavaScriptCore/InspectorValues.h>',
- '<wtf/Assertions.h>',
- ]
-
- header_args = {
- 'primaryInclude': '"%sInternal.h"' % ObjCGenerator.OBJC_PREFIX,
- 'secondaryIncludes': '\n'.join(['#import %s' % header for header in secondary_headers]),
- }
-
- domains = self.domains_to_generate()
- sections = []
- sections.append(self.generate_license())
- sections.append(Template(ObjCTemplates.ImplementationPrelude).substitute(None, **header_args))
- sections.extend(map(self.generate_type_implementations, domains))
- sections.append(Template(ObjCTemplates.ImplementationPostlude).substitute(None, **header_args))
- return '\n\n'.join(sections)
-
- def generate_type_implementations(self, domain):
- lines = []
- for declaration in domain.type_declarations:
- if (isinstance(declaration.type, ObjectType)):
- add_newline(lines)
- lines.append(self.generate_type_implementation(domain, declaration))
- return '\n'.join(lines)
-
- def generate_type_implementation(self, domain, declaration):
- lines = []
- lines.append('@implementation %s' % ObjCGenerator.objc_name_for_type(declaration.type))
- required_members = filter(lambda member: not member.is_optional, declaration.type_members)
- if required_members:
- lines.append('')
- lines.append(self._generate_init_method_for_required_members(domain, declaration, required_members))
- for member in declaration.type_members:
- lines.append('')
- lines.append(self._generate_setter_for_member(domain, declaration, member))
- lines.append('')
- lines.append(self._generate_getter_for_member(domain, declaration, member))
- lines.append('')
- lines.append('@end')
- return '\n'.join(lines)
-
- def _generate_init_method_for_required_members(self, domain, declaration, required_members):
- pairs = []
- for member in required_members:
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- pairs.append('%s:(%s)%s' % (var_name, objc_type, var_name))
- pairs[0] = ucfirst(pairs[0])
- lines = []
- lines.append('- (instancetype)initWith%s;' % ' '.join(pairs))
- lines.append('{')
- lines.append(' self = [super init];')
- lines.append(' if (!self)')
- lines.append(' return nil;')
- lines.append('')
-
- required_pointer_members = filter(lambda member: ObjCGenerator.is_type_objc_pointer_type(member.type), required_members)
- if required_pointer_members:
- for member in required_pointer_members:
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- lines.append(' THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(%s, @"%s");' % (var_name, var_name))
- objc_array_class = ObjCGenerator.objc_class_for_array_type(member.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
- lines.append('')
-
- for member in required_members:
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- lines.append(' self.%s = %s;' % (var_name, var_name))
-
- lines.append('')
- lines.append(' return self;')
- lines.append('}')
- return '\n'.join(lines)
-
- def _generate_setter_for_member(self, domain, declaration, member):
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- setter_method = ObjCGenerator.objc_setter_method_for_member(declaration, member)
- conversion_expression = ObjCGenerator.objc_to_protocol_expression_for_member(declaration, member, var_name)
- lines = []
- lines.append('- (void)set%s:(%s)%s' % (ucfirst(var_name), objc_type, var_name))
- lines.append('{')
- objc_array_class = ObjCGenerator.objc_class_for_array_type(member.type)
- if objc_array_class and objc_array_class.startswith(ObjCGenerator.OBJC_PREFIX):
- lines.append(' THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(%s, [%s class]);' % (var_name, objc_array_class))
- lines.append(' [super %s:%s forKey:@"%s"];' % (setter_method, conversion_expression, member.member_name))
- lines.append('}')
- return '\n'.join(lines)
-
- def _generate_getter_for_member(self, domain, declaration, member):
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- var_name = ObjCGenerator.identifier_to_objc_identifier(member.member_name)
- getter_method = ObjCGenerator.objc_getter_method_for_member(declaration, member)
- basic_expression = '[super %s:@"%s"]' % (getter_method, member.member_name)
- conversion_expression = ObjCGenerator.protocol_to_objc_expression_for_member(declaration, member, basic_expression)
- lines = []
- lines.append('- (%s)%s' % (objc_type, var_name))
- lines.append('{')
- lines.append(' return %s;' % conversion_expression)
- lines.append('}')
- return '\n'.join(lines)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generator.py b/Source/JavaScriptCore/inspector/scripts/codegen/generator.py
deleted file mode 100755
index a1923fe54..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generator.py
+++ /dev/null
@@ -1,241 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-import logging
-import os.path
-import re
-from string import Template
-
-from generator_templates import GeneratorTemplates as Templates
-from models import PrimitiveType, ObjectType, ArrayType, EnumType, AliasedType, Frameworks
-
-log = logging.getLogger('global')
-
-
-def ucfirst(str):
- return str[:1].upper() + str[1:]
-
-_ALWAYS_UPPERCASED_ENUM_VALUE_SUBSTRINGS = set(['API', 'CSS', 'DOM', 'HTML', 'XHR', 'XML'])
-
-# These objects are built manually by creating and setting InspectorValues.
-# Before sending these over the protocol, their shapes are checked against the specification.
-# So, any types referenced by these types require debug-only assertions that check values.
-# Calculating necessary assertions is annoying, and adds a lot of complexity to the generator.
-
-# FIXME: This should be converted into a property in JSON.
-_TYPES_NEEDING_RUNTIME_CASTS = set([
- "Runtime.RemoteObject",
- "Runtime.PropertyDescriptor",
- "Runtime.InternalPropertyDescriptor",
- "Runtime.CollectionEntry",
- "Debugger.FunctionDetails",
- "Debugger.CallFrame",
- "Canvas.TraceLog",
- "Canvas.ResourceInfo",
- "Canvas.ResourceState",
- # This should be a temporary hack. TimelineEvent should be created via generated C++ API.
- "Timeline.TimelineEvent",
- # For testing purposes only.
- "Test.TypeNeedingCast"
-])
-
-# FIXME: This should be converted into a property in JSON.
-_TYPES_WITH_OPEN_FIELDS = set([
- "Timeline.TimelineEvent",
- # InspectorStyleSheet not only creates this property but wants to read it and modify it.
- "CSS.CSSProperty",
- # InspectorResourceAgent needs to update mime-type.
- "Network.Response",
- # For testing purposes only.
- "Test.OpenParameterBundle"
-])
-
-
-class Generator:
- def __init__(self, model, input_filepath):
- self._model = model
- self._input_filepath = input_filepath
-
- def model(self):
- return self._model
-
- def generate_license(self):
- return Template(Templates.CopyrightBlock).substitute(None, inputFilename=os.path.basename(self._input_filepath))
-
- # These methods are overridden by subclasses.
- def non_supplemental_domains(self):
- return filter(lambda domain: not domain.is_supplemental, self.model().domains)
-
- def domains_to_generate(self):
- return self.non_supplemental_domains()
-
- def generate_output(self):
- pass
-
- def output_filename(self):
- pass
-
- def encoding_for_enum_value(self, enum_value):
- if not hasattr(self, "_assigned_enum_values"):
- self._traverse_and_assign_enum_values()
-
- return self._enum_value_encodings[enum_value]
-
- def assigned_enum_values(self):
- if not hasattr(self, "_assigned_enum_values"):
- self._traverse_and_assign_enum_values()
-
- return self._assigned_enum_values[:] # Slice.
-
- @staticmethod
- def type_needs_runtime_casts(_type):
- return _type.qualified_name() in _TYPES_NEEDING_RUNTIME_CASTS
-
- @staticmethod
- def type_has_open_fields(_type):
- return _type.qualified_name() in _TYPES_WITH_OPEN_FIELDS
-
- def type_needs_shape_assertions(self, _type):
- if not hasattr(self, "_types_needing_shape_assertions"):
- self.calculate_types_requiring_shape_assertions(self.model().domains)
-
- return _type in self._types_needing_shape_assertions
-
- # To restrict the domains over which we compute types needing assertions, call this method
- # before generating any output with the desired domains parameter. The computed
- # set of types will not be automatically regenerated on subsequent calls to
- # Generator.types_needing_shape_assertions().
- def calculate_types_requiring_shape_assertions(self, domains):
- domain_names = map(lambda domain: domain.domain_name, domains)
- log.debug("> Calculating types that need shape assertions (eligible domains: %s)" % ", ".join(domain_names))
-
- # Mutates the passed-in set; this simplifies checks to prevent infinite recursion.
- def gather_transitively_referenced_types(_type, gathered_types):
- if _type in gathered_types:
- return
-
- if isinstance(_type, ObjectType):
- log.debug("> Adding type %s to list of types needing shape assertions." % _type.qualified_name())
- gathered_types.add(_type)
- for type_member in _type.members:
- gather_transitively_referenced_types(type_member.type, gathered_types)
- elif isinstance(_type, EnumType):
- log.debug("> Adding type %s to list of types needing shape assertions." % _type.qualified_name())
- gathered_types.add(_type)
- elif isinstance(_type, AliasedType):
- gather_transitively_referenced_types(_type.aliased_type, gathered_types)
- elif isinstance(_type, ArrayType):
- gather_transitively_referenced_types(_type.element_type, gathered_types)
-
- found_types = set()
- for domain in domains:
- for declaration in domain.type_declarations:
- if declaration.type.qualified_name() in _TYPES_NEEDING_RUNTIME_CASTS:
- log.debug("> Gathering types referenced by %s to generate shape assertions." % declaration.type.qualified_name())
- gather_transitively_referenced_types(declaration.type, found_types)
-
- self._types_needing_shape_assertions = found_types
-
- # Private helper instance methods.
- def _traverse_and_assign_enum_values(self):
- self._enum_value_encodings = {}
- self._assigned_enum_values = []
- all_types = []
-
- domains = self.non_supplemental_domains()
-
- for domain in domains:
- for type_declaration in domain.type_declarations:
- all_types.append(type_declaration.type)
- for type_member in type_declaration.type_members:
- all_types.append(type_member.type)
-
- for domain in domains:
- for event in domain.events:
- all_types.extend([parameter.type for parameter in event.event_parameters])
-
- for domain in domains:
- for command in domain.commands:
- all_types.extend([parameter.type for parameter in command.call_parameters])
- all_types.extend([parameter.type for parameter in command.return_parameters])
-
- for _type in all_types:
- if not isinstance(_type, EnumType):
- continue
- map(self._assign_encoding_for_enum_value, _type.enum_values())
-
- def _assign_encoding_for_enum_value(self, enum_value):
- if enum_value in self._enum_value_encodings:
- return
-
- self._enum_value_encodings[enum_value] = len(self._assigned_enum_values)
- self._assigned_enum_values.append(enum_value)
-
- # Miscellaneous text manipulation routines.
- def wrap_with_guard_for_domain(self, domain, text):
- if self.model().framework is Frameworks.WebInspector:
- return text
- guard = domain.feature_guard
- if guard:
- return Generator.wrap_with_guard(guard, text)
- return text
-
- @staticmethod
- def wrap_with_guard(guard, text):
- return '\n'.join([
- '#if %s' % guard,
- text,
- '#endif // %s' % guard,
- ])
-
- @staticmethod
- def stylized_name_for_enum_value(enum_value):
- regex = '(%s)' % "|".join(_ALWAYS_UPPERCASED_ENUM_VALUE_SUBSTRINGS)
-
- def replaceCallback(match):
- return match.group(1).upper()
-
- # Split on hyphen, introduce camelcase, and force uppercasing of acronyms.
- subwords = map(ucfirst, enum_value.split('-'))
- return re.sub(re.compile(regex, re.IGNORECASE), replaceCallback, "".join(subwords))
-
- @staticmethod
- def js_name_for_parameter_type(_type):
- _type = _type
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type # Fall through.
- if isinstance(_type, EnumType):
- _type = _type.primitive_type # Fall through.
-
- if isinstance(_type, (ArrayType, ObjectType)):
- return 'object'
- if isinstance(_type, PrimitiveType):
- if _type.qualified_name() in ['object', 'any']:
- return 'object'
- elif _type.qualified_name() in ['integer', 'number']:
- return 'number'
- else:
- return _type.qualified_name()
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/generator_templates.py b/Source/JavaScriptCore/inspector/scripts/codegen/generator_templates.py
deleted file mode 100644
index f2e330a72..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/generator_templates.py
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-# Generator templates, which can be filled with string.Template.
-# Following are classes that fill the templates from the typechecked model.
-
-
-class GeneratorTemplates:
- CopyrightBlock = (
- """/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 ${inputFilename}
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py""")
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/models.py b/Source/JavaScriptCore/inspector/scripts/codegen/models.py
deleted file mode 100755
index 2dabdc0ca..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/models.py
+++ /dev/null
@@ -1,591 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-import logging
-import collections
-
-log = logging.getLogger('global')
-
-
-def ucfirst(str):
- return str[:1].upper() + str[1:]
-
-
-def find_duplicates(l):
- return [key for key, count in collections.Counter(l).items() if count > 1]
-
-
-_FRAMEWORK_CONFIG_MAP = {
- "Global": {
- },
- "JavaScriptCore": {
- "export_macro": "JS_EXPORT_PRIVATE"
- },
- "WebInspector": {
- },
- # Used for code generator tests.
- "Test": {
- }
-}
-
-
-class ParseException(Exception):
- pass
-
-
-class TypecheckException(Exception):
- pass
-
-
-class Framework:
- def __init__(self, name):
- self._settings = _FRAMEWORK_CONFIG_MAP[name]
- self.name = name
-
- def setting(self, key, default=''):
- return self._settings.get(key, default)
-
- @staticmethod
- def fromString(frameworkString):
- if frameworkString == "Global":
- return Frameworks.Global
-
- if frameworkString == "JavaScriptCore":
- return Frameworks.JavaScriptCore
-
- if frameworkString == "WebInspector":
- return Frameworks.WebInspector
-
- if frameworkString == "Test":
- return Frameworks.Test
-
- raise ParseException("Unknown framework: %s" % frameworkString)
-
-
-class Frameworks:
- Global = Framework("Global")
- JavaScriptCore = Framework("JavaScriptCore")
- WebInspector = Framework("WebInspector")
- Test = Framework("Test")
-
-
-class TypeReference:
- def __init__(self, type_kind, referenced_type_name, enum_values, array_items):
- self.type_kind = type_kind
- self.referenced_type_name = referenced_type_name
- self.enum_values = enum_values
- if array_items is None:
- self.array_type_ref = None
- else:
- self.array_type_ref = TypeReference(array_items.get('type'), array_items.get('$ref'), array_items.get('enum'), array_items.get('items'))
-
- if type_kind is not None and referenced_type_name is not None:
- raise ParseException("Type reference cannot have both 'type' and '$ref' keys.")
-
- if type_kind == "array" and array_items is None:
- raise ParseException("Type reference with type 'array' must have key 'items' to define array element type.")
-
- if enum_values is not None and len(enum_values) == 0:
- raise ParseException("Type reference with enum values must have at least one enum value.")
-
- def referenced_name(self):
- if self.referenced_type_name is not None:
- return self.referenced_type_name
- else:
- return self.type_kind # integer, string, number, boolean, enum, object, array
-
-
-class Type:
- def __init__(self):
- pass
-
- def __eq__(self, other):
- return self.qualified_name() == other.qualified_name()
-
- def __hash__(self):
- return self.qualified_name().__hash__()
-
- def raw_name(self):
- return self._name
-
- # These methods should be overridden by subclasses.
- def is_enum(self):
- return False
-
- def type_domain(self):
- pass
-
- def qualified_name(self):
- pass
-
- # This is used to resolve nested types after instances are created.
- def resolve_type_references(self, protocol):
- pass
-
-
-class PrimitiveType(Type):
- def __init__(self, name):
- self._name = name
-
- def __repr__(self):
- return 'PrimitiveType[%s]' % self.qualified_name()
-
- def type_domain(self):
- return None
-
- def qualified_name(self):
- return self.raw_name()
-
-
-class AliasedType(Type):
- def __init__(self, name, domain, aliased_type_ref):
- self._name = name
- self._domain = domain
- self._aliased_type_ref = aliased_type_ref
- self.aliased_type = None
-
- def __repr__(self):
- if self.aliased_type is not None:
- return 'AliasedType[%s -> %r]' % (self.qualified_name(), self.aliased_type)
- else:
- return 'AliasedType[%s -> (unresolved)]' % self.qualified_name()
-
- def is_enum(self):
- return self.aliased_type.is_enum()
-
- def type_domain(self):
- return self._domain
-
- def qualified_name(self):
- return ".".join([self.type_domain().domain_name, self.raw_name()])
-
- def resolve_type_references(self, protocol):
- if self.aliased_type is not None:
- return
-
- self.aliased_type = protocol.lookup_type_reference(self._aliased_type_ref, self.type_domain())
- log.debug("< Resolved type reference for aliased type in %s: %s" % (self.qualified_name(), self.aliased_type.qualified_name()))
-
-
-class EnumType(Type):
- def __init__(self, name, domain, values, primitive_type_ref, is_anonymous=False):
- self._name = name
- self._domain = domain
- self._values = values
- self._primitive_type_ref = primitive_type_ref
- self.primitive_type = None
- self.is_anonymous = is_anonymous
-
- def __repr__(self):
- return 'EnumType[value_type=%s; values=%s]' % (self.qualified_name(), ', '.join(map(str, self.enum_values())))
-
- def is_enum(self):
- return True
-
- def type_domain(self):
- return self._domain
-
- def enum_values(self):
- return self._values
-
- def qualified_name(self):
- return ".".join([self.type_domain().domain_name, self.raw_name()])
-
- def resolve_type_references(self, protocol):
- if self.primitive_type is not None:
- return
-
- self.primitive_type = protocol.lookup_type_reference(self._primitive_type_ref, Domains.GLOBAL)
- log.debug("< Resolved type reference for enum type in %s: %s" % (self.qualified_name(), self.primitive_type.qualified_name()))
- log.debug("<< enum values: %s" % self.enum_values())
-
-
-class ArrayType(Type):
- def __init__(self, name, element_type_ref, domain):
- self._name = name
- self._domain = domain
- self._element_type_ref = element_type_ref
- self.element_type = None
-
- def __repr__(self):
- if self.element_type is not None:
- return 'ArrayType[element_type=%r]' % self.element_type
- else:
- return 'ArrayType[element_type=(unresolved)]'
-
- def type_domain(self):
- return self._domain
-
- def qualified_name(self):
- return ".".join(["array", self.element_type.qualified_name()])
-
- def resolve_type_references(self, protocol):
- if self.element_type is not None:
- return
-
- self.element_type = protocol.lookup_type_reference(self._element_type_ref, self.type_domain())
- log.debug("< Resolved type reference for element type in %s: %s" % (self.qualified_name(), self.element_type.qualified_name()))
-
-
-class ObjectType(Type):
- def __init__(self, name, domain, members):
- self._name = name
- self._domain = domain
- self.members = members
-
- def __repr__(self):
- return 'ObjectType[%s]' % self.qualified_name()
-
- def type_domain(self):
- return self._domain
-
- def qualified_name(self):
- return ".".join([self.type_domain().domain_name, self.raw_name()])
-
-
-def check_for_required_properties(props, obj, what):
- for prop in props:
- if prop not in obj:
- raise ParseException("When parsing %s, required property missing: %s" % (what, prop))
-
-
-class Protocol:
- def __init__(self, framework_name):
- self.domains = []
- self.types_by_name = {}
- self.framework = Framework.fromString(framework_name)
-
- def parse_specification(self, json, isSupplemental):
- log.debug("parse toplevel")
-
- if isinstance(json, dict) and 'domains' in json:
- json = json['domains']
- if not isinstance(json, list):
- json = [json]
-
- for domain in json:
- self.parse_domain(domain, isSupplemental)
-
- def parse_domain(self, json, isSupplemental):
- check_for_required_properties(['domain'], json, "domain")
- log.debug("parse domain " + json['domain'])
-
- types = []
- commands = []
- events = []
-
- if 'types' in json:
- if not isinstance(json['types'], list):
- raise ParseException("Malformed domain specification: types is not an array")
- types.extend([self.parse_type_declaration(declaration) for declaration in json['types']])
-
- if 'commands' in json:
- if not isinstance(json['commands'], list):
- raise ParseException("Malformed domain specification: commands is not an array")
- commands.extend([self.parse_command(command) for command in json['commands']])
-
- if 'events' in json:
- if not isinstance(json['events'], list):
- raise ParseException("Malformed domain specification: events is not an array")
- events.extend([self.parse_event(event) for event in json['events']])
-
- if 'availability' in json:
- if not commands and not events:
- raise ParseException("Malformed domain specification: availability should only be included if there are commands or events.")
- allowed_activation_strings = set(['web'])
- if json['availability'] 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))
-
- def parse_type_declaration(self, json):
- check_for_required_properties(['id', 'type'], json, "type")
- log.debug("parse type %s" % json['id'])
-
- type_members = []
-
- if 'properties' in json:
- if not isinstance(json['properties'], list):
- raise ParseException("Malformed type specification: properties is not an array")
- type_members.extend([self.parse_type_member(member) for member in json['properties']])
-
- duplicate_names = find_duplicates([member.member_name for member in type_members])
- if len(duplicate_names) > 0:
- raise ParseException("Malformed domain specification: type declaration for %s has duplicate member names" % json['id'])
-
- type_ref = TypeReference(json['type'], json.get('$ref'), json.get('enum'), json.get('items'))
- return TypeDeclaration(json['id'], type_ref, json.get("description", ""), type_members)
-
- def parse_type_member(self, json):
- check_for_required_properties(['name'], json, "type member")
- log.debug("parse type member %s" % json['name'])
-
- type_ref = TypeReference(json.get('type'), json.get('$ref'), json.get('enum'), json.get('items'))
- return TypeMember(json['name'], type_ref, json.get('optional', False), json.get('description', ""))
-
- def parse_command(self, json):
- check_for_required_properties(['name'], json, "command")
- log.debug("parse command %s" % json['name'])
-
- call_parameters = []
- return_parameters = []
-
- if 'parameters' in json:
- if not isinstance(json['parameters'], list):
- raise ParseException("Malformed command specification: parameters is not an array")
- call_parameters.extend([self.parse_call_or_return_parameter(parameter) for parameter in json['parameters']])
-
- duplicate_names = find_duplicates([param.parameter_name for param in call_parameters])
- if len(duplicate_names) > 0:
- raise ParseException("Malformed domain specification: call parameter list for command %s has duplicate parameter names" % json['name'])
-
- if 'returns' in json:
- if not isinstance(json['returns'], list):
- raise ParseException("Malformed command specification: returns is not an array")
- return_parameters.extend([self.parse_call_or_return_parameter(parameter) for parameter in json['returns']])
-
- duplicate_names = find_duplicates([param.parameter_name for param in return_parameters])
- if len(duplicate_names) > 0:
- raise ParseException("Malformed domain specification: return parameter list for command %s has duplicate parameter names" % json['name'])
-
- return Command(json['name'], call_parameters, return_parameters, json.get('description', ""), json.get('async', False))
-
- def parse_event(self, json):
- check_for_required_properties(['name'], json, "event")
- log.debug("parse event %s" % json['name'])
-
- event_parameters = []
-
- if 'parameters' in json:
- if not isinstance(json['parameters'], list):
- raise ParseException("Malformed event specification: parameters is not an array")
- event_parameters.extend([self.parse_call_or_return_parameter(parameter) for parameter in json['parameters']])
-
- duplicate_names = find_duplicates([param.parameter_name for param in event_parameters])
- if len(duplicate_names) > 0:
- raise ParseException("Malformed domain specification: parameter list for event %s has duplicate parameter names" % json['name'])
-
- return Event(json['name'], event_parameters, json.get('description', ""))
-
- def parse_call_or_return_parameter(self, json):
- check_for_required_properties(['name'], json, "parameter")
- log.debug("parse parameter %s" % json['name'])
-
- type_ref = TypeReference(json.get('type'), json.get('$ref'), json.get('enum'), json.get('items'))
- return Parameter(json['name'], type_ref, json.get('optional', False), json.get('description', ""))
-
- def resolve_types(self):
- qualified_declared_type_names = set(['boolean', 'string', 'integer', 'number', 'enum', 'array', 'object', 'any'])
-
- self.types_by_name['string'] = PrimitiveType('string')
- for _primitive_type in ['boolean', 'integer', 'number']:
- self.types_by_name[_primitive_type] = PrimitiveType(_primitive_type)
- for _object_type in ['any', 'object']:
- self.types_by_name[_object_type] = PrimitiveType(_object_type)
-
- # Gather qualified type names from type declarations in each domain.
- for domain in self.domains:
- for declaration in domain.type_declarations:
- # Basic sanity checking.
- if declaration.type_ref.referenced_type_name is not None:
- raise TypecheckException("Type declarations must name a base type, not a type reference.")
-
- # Find duplicate qualified type names.
- qualified_type_name = ".".join([domain.domain_name, declaration.type_name])
- if qualified_type_name in qualified_declared_type_names:
- raise TypecheckException("Duplicate type declaration: %s" % qualified_type_name)
-
- qualified_declared_type_names.add(qualified_type_name)
-
- type_instance = None
-
- kind = declaration.type_ref.type_kind
- if declaration.type_ref.enum_values is not None:
- primitive_type_ref = TypeReference(declaration.type_ref.type_kind, None, None, None)
- type_instance = EnumType(declaration.type_name, domain, declaration.type_ref.enum_values, primitive_type_ref)
- elif kind == "array":
- type_instance = ArrayType(declaration.type_name, declaration.type_ref.array_type_ref, domain)
- elif kind == "object":
- type_instance = ObjectType(declaration.type_name, domain, declaration.type_members)
- else:
- type_instance = AliasedType(declaration.type_name, domain, declaration.type_ref)
-
- log.debug("< Created fresh type %r for declaration %s" % (type_instance, qualified_type_name))
- self.types_by_name[qualified_type_name] = type_instance
-
- # Resolve all type references recursively.
- for domain in self.domains:
- domain.resolve_type_references(self)
-
- def lookup_type_for_declaration(self, declaration, domain):
- # This will only match a type defined in the same domain, where prefixes aren't required.
- qualified_name = ".".join([domain.domain_name, declaration.type_name])
- if qualified_name in self.types_by_name:
- found_type = self.types_by_name[qualified_name]
- found_type.resolve_type_references(self)
- return found_type
-
- raise TypecheckException("Lookup failed for type declaration: %s (referenced from domain: %s)" % (declaration.type_name, domain.domain_name))
-
- def lookup_type_reference(self, type_ref, domain):
- # If reference is to an anonymous array type, create a fresh instance.
- if type_ref.type_kind == "array":
- type_instance = ArrayType(None, type_ref.array_type_ref, domain)
- type_instance.resolve_type_references(self)
- log.debug("< Created fresh type instance for anonymous array type: %s" % type_instance.qualified_name())
- return type_instance
-
- # If reference is to an anonymous enum type, create a fresh instance.
- if type_ref.enum_values is not None:
- # We need to create a type reference without enum values as the enum's nested type.
- primitive_type_ref = TypeReference(type_ref.type_kind, None, None, None)
- type_instance = EnumType("(anonymous)", domain, type_ref.enum_values, primitive_type_ref, True)
- type_instance.resolve_type_references(self)
- log.debug("< Created fresh type instance for anonymous enum type: %s" % type_instance.qualified_name())
- return type_instance
-
- # This will match when referencing a type defined in the same domain, where prefixes aren't required.
- qualified_name = ".".join([domain.domain_name, type_ref.referenced_name()])
- if qualified_name in self.types_by_name:
- found_type = self.types_by_name[qualified_name]
- found_type.resolve_type_references(self)
- log.debug("< Lookup succeeded for unqualified type: %s" % found_type.qualified_name())
- return found_type
-
- # This will match primitive types and fully-qualified types from a different domain.
- if type_ref.referenced_name() in self.types_by_name:
- found_type = self.types_by_name[type_ref.referenced_name()]
- found_type.resolve_type_references(self)
- log.debug("< Lookup succeeded for primitive or qualified type: %s" % found_type.qualified_name())
- return found_type
-
- raise TypecheckException("Lookup failed for type reference: %s (referenced from domain: %s)" % (type_ref.referenced_name(), domain.domain_name))
-
-
-class Domain:
- def __init__(self, domain_name, description, feature_guard, availability, isSupplemental, 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.type_declarations = type_declarations
- self.commands = commands
- self.events = events
-
- def resolve_type_references(self, protocol):
- log.debug("> Resolving type declarations for domain: %s" % self.domain_name)
- for declaration in self.type_declarations:
- declaration.resolve_type_references(protocol, self)
-
- log.debug("> Resolving types in commands for domain: %s" % self.domain_name)
- for command in self.commands:
- command.resolve_type_references(protocol, self)
-
- log.debug("> Resolving types in events for domain: %s" % self.domain_name)
- for event in self.events:
- event.resolve_type_references(protocol, self)
-
-
-class Domains:
- GLOBAL = Domain("", "The global domain, in which primitive types are implicitly declared.", None, None, True, [], [], [])
-
-
-class TypeDeclaration:
- def __init__(self, type_name, type_ref, description, type_members):
- self.type_name = type_name
- self.type_ref = type_ref
- self.description = description
- self.type_members = type_members
-
- if self.type_name != ucfirst(self.type_name):
- raise ParseException("Types must begin with an uppercase character.")
-
- def resolve_type_references(self, protocol, domain):
- log.debug(">> Resolving type references for type declaration: %s" % self.type_name)
- self.type = protocol.lookup_type_for_declaration(self, domain)
- for member in self.type_members:
- member.resolve_type_references(protocol, domain)
-
-
-class TypeMember:
- def __init__(self, member_name, type_ref, is_optional, description):
- self.member_name = member_name
- self.type_ref = type_ref
- self.is_optional = is_optional
- self.description = description
-
- if self.is_optional not in [True, False]:
- raise ParseException("The 'optional' flag for a type member must be a boolean literal.")
-
- def resolve_type_references(self, protocol, domain):
- log.debug(">>> Resolving type references for type member: %s" % self.member_name)
- self.type = protocol.lookup_type_reference(self.type_ref, domain)
-
-
-class Parameter:
- def __init__(self, parameter_name, type_ref, is_optional, description):
- self.parameter_name = parameter_name
- self.type_ref = type_ref
- self.is_optional = is_optional
- self.description = description
-
- if self.is_optional not in [True, False]:
- raise ParseException("The 'optional' flag for a parameter must be a boolean literal.")
-
- def resolve_type_references(self, protocol, domain):
- log.debug(">>> Resolving type references for parameter: %s" % self.parameter_name)
- self.type = protocol.lookup_type_reference(self.type_ref, domain)
-
-
-class Command:
- def __init__(self, command_name, call_parameters, return_parameters, description, is_async):
- self.command_name = command_name
- self.call_parameters = call_parameters
- self.return_parameters = return_parameters
- self.description = description
- self.is_async = is_async
-
- def resolve_type_references(self, protocol, domain):
- log.debug(">> Resolving type references for call parameters in command: %s" % self.command_name)
- for parameter in self.call_parameters:
- parameter.resolve_type_references(protocol, domain)
-
- log.debug(">> Resolving type references for return parameters in command: %s" % self.command_name)
- for parameter in self.return_parameters:
- parameter.resolve_type_references(protocol, domain)
-
-
-class Event:
- def __init__(self, event_name, event_parameters, description):
- self.event_name = event_name
- self.event_parameters = event_parameters
- self.description = description
-
- def resolve_type_references(self, protocol, domain):
- log.debug(">> Resolving type references for parameters in event: %s" % self.event_name)
- for parameter in self.event_parameters:
- parameter.resolve_type_references(protocol, domain)
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator.py b/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator.py
deleted file mode 100755
index f6dd03cb5..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator.py
+++ /dev/null
@@ -1,523 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 Apple Inc. 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.
-
-import logging
-from generator import Generator, ucfirst
-from models import PrimitiveType, ObjectType, ArrayType, EnumType, AliasedType, Frameworks
-
-log = logging.getLogger('global')
-
-
-def join_type_and_name(type_str, name_str):
- if type_str.endswith('*'):
- return type_str + name_str
- return type_str + ' ' + name_str
-
-
-def strip_block_comment_markers(str):
- return str.replace('/*', '').replace('*/', '')
-
-
-def remove_duplicate_from_str(str, possible_duplicate):
- return str.replace(possible_duplicate + possible_duplicate, possible_duplicate)
-
-
-_OBJC_IDENTIFIER_RENAME_MAP = {
- 'this': 'thisObject', # Debugger.CallFrame.this
- 'description': 'stringRepresentation', # Runtime.RemoteObject.description
- 'id': 'identifier', # Page.Frame.id, Runtime.ExecutionContextDescription.id, Debugger.BreakpointAction.id
-}
-
-_OBJC_IDENTIFIER_REVERSE_RENAME_MAP = dict((v, k) for k, v in _OBJC_IDENTIFIER_RENAME_MAP.iteritems())
-
-
-class ObjCTypeCategory:
- Simple = 0
- String = 1
- Object = 2
- Array = 3
-
- @staticmethod
- def category_for_type(_type):
- if (isinstance(_type, PrimitiveType)):
- if _type.raw_name() is 'string':
- return ObjCTypeCategory.String
- if _type.raw_name() in ['object', 'any']:
- return ObjCTypeCategory.Object
- if _type.raw_name() is 'array':
- return ObjCTypeCategory.Array
- return ObjCTypeCategory.Simple
- if (isinstance(_type, ObjectType)):
- return ObjCTypeCategory.Object
- if (isinstance(_type, ArrayType)):
- return ObjCTypeCategory.Array
- if (isinstance(_type, AliasedType)):
- return ObjCTypeCategory.category_for_type(_type.aliased_type)
- if (isinstance(_type, EnumType)):
- return ObjCTypeCategory.category_for_type(_type.primitive_type)
- return None
-
-
-
-# This class contains extra static methods used for generation, but does
-# not participate in any inheritance hierarchy. File generators should
-# extend the generic "Generator" class instead.
-class ObjCGenerator:
- OBJC_PREFIX = 'RWIProtocol'
- OBJC_JSON_OBJECT_BASE = '%sJSONObject' % OBJC_PREFIX
-
- # Adjust identifier names that collide with ObjC keywords.
-
- @staticmethod
- def identifier_to_objc_identifier(name):
- return _OBJC_IDENTIFIER_RENAME_MAP.get(name, name)
-
- @staticmethod
- def objc_identifier_to_identifier(name):
- return _OBJC_IDENTIFIER_REVERSE_RENAME_MAP.get(name, name)
-
- # Generate ObjC types, command handlers, and event dispatchers for a subset of domains.
-
- DOMAINS_TO_GENERATE = ['CSS', 'DOM', 'DOMStorage', 'Network', 'Page', 'GenericTypes']
-
- @staticmethod
- def should_generate_domain_types_filter(model):
- def should_generate_domain_types(domain):
- if model.framework is Frameworks.Test:
- return True
- whitelist = set(ObjCGenerator.DOMAINS_TO_GENERATE)
- whitelist.update(set(['Console', 'Debugger', 'Runtime']))
- return domain.domain_name in whitelist
- return should_generate_domain_types
-
- @staticmethod
- def should_generate_domain_command_handler_filter(model):
- def should_generate_domain_command_handler(domain):
- if model.framework is Frameworks.Test:
- return True
- whitelist = set(ObjCGenerator.DOMAINS_TO_GENERATE)
- return domain.domain_name in whitelist
- return should_generate_domain_command_handler
-
- @staticmethod
- def should_generate_domain_event_dispatcher_filter(model):
- def should_generate_domain_event_dispatcher(domain):
- if model.framework is Frameworks.Test:
- return True
- whitelist = set(ObjCGenerator.DOMAINS_TO_GENERATE)
- whitelist.add('Console')
- return domain.domain_name in whitelist
- return should_generate_domain_event_dispatcher
-
- # ObjC enum and type names.
-
- @staticmethod
- def objc_name_for_type(type):
- name = type.qualified_name().replace('.', '')
- name = remove_duplicate_from_str(name, type.type_domain().domain_name)
- return '%s%s' % (ObjCGenerator.OBJC_PREFIX, name)
-
- @staticmethod
- def objc_enum_name_for_anonymous_enum_declaration(declaration):
- domain_name = declaration.type.type_domain().domain_name
- name = '%s%s' % (domain_name, declaration.type.raw_name())
- name = remove_duplicate_from_str(name, domain_name)
- return '%s%s' % (ObjCGenerator.OBJC_PREFIX, name)
-
- @staticmethod
- def objc_enum_name_for_anonymous_enum_member(declaration, member):
- domain_name = member.type.type_domain().domain_name
- name = '%s%s%s' % (domain_name, declaration.type.raw_name(), ucfirst(member.member_name))
- name = remove_duplicate_from_str(name, domain_name)
- return '%s%s' % (ObjCGenerator.OBJC_PREFIX, name)
-
- @staticmethod
- def objc_enum_name_for_anonymous_enum_parameter(domain, event_or_command_name, parameter):
- domain_name = domain.domain_name
- name = '%s%s%s' % (domain_name, ucfirst(event_or_command_name), ucfirst(parameter.parameter_name))
- name = remove_duplicate_from_str(name, domain_name)
- return '%s%s' % (ObjCGenerator.OBJC_PREFIX, name)
-
- @staticmethod
- def objc_enum_name_for_non_anonymous_enum(_type):
- domain_name = _type.type_domain().domain_name
- name = _type.qualified_name().replace('.', '')
- name = remove_duplicate_from_str(name, domain_name)
- return '%s%s' % (ObjCGenerator.OBJC_PREFIX, name)
-
- # Miscellaneous name handling.
-
- @staticmethod
- def variable_name_prefix_for_domain(domain):
- domain_name = domain.domain_name
- if domain_name.startswith('DOM'):
- return 'dom' + domain_name[3:]
- if domain_name.startswith('CSS'):
- return 'css' + domain_name[3:]
- return domain_name[:1].lower() + domain_name[1:]
-
- # Type basics.
-
- @staticmethod
- def objc_accessor_type_for_raw_name(raw_name):
- if raw_name in ['string', 'array']:
- return 'copy'
- if raw_name in ['integer', 'number', 'boolean']:
- return 'assign'
- if raw_name in ['any', 'object']:
- return 'retain'
- return None
-
- @staticmethod
- def objc_type_for_raw_name(raw_name):
- if raw_name is 'string':
- return 'NSString *'
- if raw_name is 'array':
- return 'NSArray *'
- if raw_name is 'integer':
- return 'int'
- if raw_name is 'number':
- return 'double'
- if raw_name is 'boolean':
- return 'BOOL'
- if raw_name in ['any', 'object']:
- return '%s *' % ObjCGenerator.OBJC_JSON_OBJECT_BASE
- return None
-
- @staticmethod
- def objc_class_for_raw_name(raw_name):
- if raw_name is 'string':
- return 'NSString'
- if raw_name is 'array':
- return 'NSArray'
- if raw_name in ['integer', 'number', 'boolean']:
- return 'NSNumber'
- if raw_name in ['any', 'object']:
- return ObjCGenerator.OBJC_JSON_OBJECT_BASE
- return None
-
- # FIXME: Can these protocol_type functions be removed in favor of C++ generators functions?
-
- @staticmethod
- def protocol_type_for_raw_name(raw_name):
- if raw_name is 'string':
- return 'String'
- if raw_name is 'integer':
- return 'int'
- if raw_name is 'number':
- return 'double'
- if raw_name is 'boolean':
- return 'bool'
- if raw_name in ['any', 'object']:
- return 'InspectorObject'
- return None
-
- @staticmethod
- def protocol_type_for_type(_type):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return ObjCGenerator.protocol_type_for_raw_name(_type.raw_name())
- if (isinstance(_type, EnumType)):
- return ObjCGenerator.protocol_type_for_type(_type.primitive_type)
- if (isinstance(_type, ObjectType)):
- return 'Inspector::Protocol::%s::%s' % (_type.type_domain().domain_name, _type.raw_name())
- if (isinstance(_type, ArrayType)):
- sub_type = ObjCGenerator.protocol_type_for_type(_type.element_type)
- return 'Inspector::Protocol::Array<%s>' % sub_type
- return None
-
- @staticmethod
- def is_type_objc_pointer_type(_type):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return _type.raw_name() in ['string', 'array', 'any', 'object']
- if (isinstance(_type, EnumType)):
- return False
- if (isinstance(_type, ObjectType)):
- return True
- if (isinstance(_type, ArrayType)):
- return True
- return None
-
- @staticmethod
- def objc_class_for_type(_type):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return ObjCGenerator.objc_class_for_raw_name(_type.raw_name())
- if (isinstance(_type, EnumType)):
- return ObjCGenerator.objc_class_for_raw_name(_type.primitive_type.raw_name())
- if (isinstance(_type, ObjectType)):
- return ObjCGenerator.objc_name_for_type(_type)
- if (isinstance(_type, ArrayType)):
- sub_type = strip_block_comment_markers(ObjCGenerator.objc_class_for_type(_type.element_type))
- return 'NSArray/*<%s>*/' % sub_type
- return None
-
- @staticmethod
- def objc_class_for_array_type(_type):
- if isinstance(_type, AliasedType):
- _type = _type.aliased_type
- if isinstance(_type, ArrayType):
- return ObjCGenerator.objc_class_for_type(_type.element_type)
- return None
-
- @staticmethod
- def objc_accessor_type_for_member(member):
- return ObjCGenerator.objc_accessor_type_for_member_internal(member.type)
-
- @staticmethod
- def objc_accessor_type_for_member_internal(_type):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return ObjCGenerator.objc_accessor_type_for_raw_name(_type.raw_name())
- if (isinstance(_type, EnumType)):
- return 'assign'
- if (isinstance(_type, ObjectType)):
- return 'retain'
- if (isinstance(_type, ArrayType)):
- return 'copy'
- return None
-
- @staticmethod
- def objc_type_for_member(declaration, member):
- return ObjCGenerator.objc_type_for_member_internal(member.type, declaration, member)
-
- @staticmethod
- def objc_type_for_member_internal(_type, declaration, member):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return ObjCGenerator.objc_type_for_raw_name(_type.raw_name())
- if (isinstance(_type, EnumType)):
- if (_type.is_anonymous):
- return ObjCGenerator.objc_enum_name_for_anonymous_enum_member(declaration, member)
- return ObjCGenerator.objc_enum_name_for_non_anonymous_enum(_type)
- if (isinstance(_type, ObjectType)):
- return ObjCGenerator.objc_name_for_type(_type) + ' *'
- if (isinstance(_type, ArrayType)):
- sub_type = strip_block_comment_markers(ObjCGenerator.objc_class_for_type(_type.element_type))
- return 'NSArray/*<%s>*/ *' % sub_type
- return None
-
- @staticmethod
- def objc_type_for_param(domain, event_or_command_name, parameter, respect_optional=True):
- objc_type = ObjCGenerator.objc_type_for_param_internal(parameter.type, domain, event_or_command_name, parameter)
- if respect_optional and parameter.is_optional:
- if objc_type.endswith('*'):
- return objc_type + '*'
- return objc_type + ' *'
- return objc_type
-
- @staticmethod
- def objc_type_for_param_internal(_type, domain, event_or_command_name, parameter):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- return ObjCGenerator.objc_type_for_raw_name(_type.raw_name())
- if (isinstance(_type, EnumType)):
- if _type.is_anonymous:
- return ObjCGenerator.objc_enum_name_for_anonymous_enum_parameter(domain, event_or_command_name, parameter)
- return ObjCGenerator.objc_enum_name_for_non_anonymous_enum(_type)
- if (isinstance(_type, ObjectType)):
- return ObjCGenerator.objc_name_for_type(_type) + ' *'
- if (isinstance(_type, ArrayType)):
- sub_type = strip_block_comment_markers(ObjCGenerator.objc_class_for_type(_type.element_type))
- return 'NSArray/*<%s>*/ *' % sub_type
- return None
-
- # ObjC <-> Protocol conversion for commands and events.
- # - convert a command call parameter received from Protocol to ObjC for handler
- # - convert a command return parameter in callback block from ObjC to Protocol to send
- # - convert an event parameter from ObjC API to Protocol to send
-
- @staticmethod
- def objc_protocol_export_expression_for_variable(var_type, var_name):
- category = ObjCTypeCategory.category_for_type(var_type)
- if category in [ObjCTypeCategory.Simple, ObjCTypeCategory.String]:
- if isinstance(var_type, EnumType):
- return 'toProtocolString(%s)' % var_name
- return var_name
- if category is ObjCTypeCategory.Object:
- return '[%s toInspectorObject]' % var_name
- if category is ObjCTypeCategory.Array:
- protocol_type = ObjCGenerator.protocol_type_for_type(var_type.element_type)
- objc_class = ObjCGenerator.objc_class_for_type(var_type.element_type)
- if protocol_type == 'Inspector::Protocol::Array<String>':
- return 'inspectorStringArrayArray(%s)' % var_name
- if protocol_type is 'String' and objc_class is 'NSString':
- return 'inspectorStringArray(%s)' % var_name
- if protocol_type is 'int' and objc_class is 'NSNumber':
- return 'inspectorIntegerArray(%s)' % var_name
- if protocol_type is 'double' and objc_class is 'NSNumber':
- return 'inspectorDoubleArray(%s)' % var_name
- return 'inspectorObjectArray(%s)' % var_name
-
- @staticmethod
- def objc_protocol_import_expression_for_member(name, declaration, member):
- if isinstance(member.type, EnumType):
- if member.type.is_anonymous:
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_anonymous_enum_member(declaration, member), name)
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_non_anonymous_enum(member.type), name)
- return ObjCGenerator.objc_protocol_import_expression_for_variable(member.type, name)
-
- @staticmethod
- def objc_protocol_import_expression_for_parameter(name, domain, event_or_command_name, parameter):
- if isinstance(parameter.type, EnumType):
- if parameter.type.is_anonymous:
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_anonymous_enum_parameter(domain, event_or_command_name, parameter), name)
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_non_anonymous_enum(parameter.type), name)
- return ObjCGenerator.objc_protocol_import_expression_for_variable(parameter.type, name)
-
- @staticmethod
- def objc_protocol_import_expression_for_variable(var_type, var_name):
- category = ObjCTypeCategory.category_for_type(var_type)
- if category in [ObjCTypeCategory.Simple, ObjCTypeCategory.String]:
- return var_name
- if category is ObjCTypeCategory.Object:
- objc_class = ObjCGenerator.objc_class_for_type(var_type)
- return '[[[%s alloc] initWithInspectorObject:%s] autorelease]' % (objc_class, var_name)
- if category is ObjCTypeCategory.Array:
- objc_class = ObjCGenerator.objc_class_for_type(var_type.element_type)
- if objc_class is 'NSString':
- return 'objcStringArray(%s)' % var_name
- if objc_class is 'NSNumber': # FIXME: Integer or Double?
- return 'objcIntegerArray(%s)' % var_name
- return 'objcArray<%s>(%s)' % (objc_class, var_name)
-
- # ObjC <-> JSON object conversion for types getters/setters.
- # - convert a member setter from ObjC API to JSON object setter
- # - convert a member getter from JSON object to ObjC API
-
- @staticmethod
- def objc_to_protocol_expression_for_member(declaration, member, sub_expression):
- category = ObjCTypeCategory.category_for_type(member.type)
- if category in [ObjCTypeCategory.Simple, ObjCTypeCategory.String]:
- if isinstance(member.type, EnumType):
- return 'toProtocolString(%s)' % sub_expression
- return sub_expression
- if category is ObjCTypeCategory.Object:
- return sub_expression
- if category is ObjCTypeCategory.Array:
- objc_class = ObjCGenerator.objc_class_for_type(member.type.element_type)
- if objc_class is 'NSString':
- return 'inspectorStringArray(%s)' % sub_expression
- if objc_class is 'NSNumber':
- protocol_type = ObjCGenerator.protocol_type_for_type(member.type.element_type)
- if protocol_type is 'double':
- return 'inspectorDoubleArray(%s)' % sub_expression
- return 'inspectorIntegerArray(%s)' % sub_expression
- return 'inspectorObjectArray(%s)' % sub_expression
-
- @staticmethod
- def protocol_to_objc_expression_for_member(declaration, member, sub_expression):
- category = ObjCTypeCategory.category_for_type(member.type)
- if category in [ObjCTypeCategory.Simple, ObjCTypeCategory.String]:
- if isinstance(member.type, EnumType):
- if member.type.is_anonymous:
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_anonymous_enum_member(declaration, member), sub_expression)
- return 'fromProtocolString<%s>(%s)' % (ObjCGenerator.objc_enum_name_for_non_anonymous_enum(member.type), sub_expression)
- return sub_expression
- if category is ObjCTypeCategory.Object:
- objc_type = ObjCGenerator.objc_type_for_member(declaration, member)
- return '(%s)%s' % (objc_type, sub_expression)
- if category is ObjCTypeCategory.Array:
- protocol_type = ObjCGenerator.protocol_type_for_type(member.type.element_type)
- objc_class = ObjCGenerator.objc_class_for_type(member.type.element_type)
- if objc_class is 'NSString':
- return 'objcStringArray(%s)' % sub_expression
- if objc_class is 'NSNumber':
- protocol_type = ObjCGenerator.protocol_type_for_type(member.type.element_type)
- if protocol_type is 'double':
- return 'objcDoubleArray(%s)' % sub_expression
- return 'objcIntegerArray(%s)' % sub_expression
- return 'objcArray<%s>(%s)' % (objc_class, sub_expression)
-
- # JSON object setter/getter selectors for types.
-
- @staticmethod
- def objc_setter_method_for_member(declaration, member):
- return ObjCGenerator.objc_setter_method_for_member_internal(member.type, declaration, member)
-
- @staticmethod
- def objc_setter_method_for_member_internal(_type, declaration, member):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- raw_name = _type.raw_name()
- if raw_name is 'boolean':
- return 'setBool'
- if raw_name is 'integer':
- return 'setInteger'
- if raw_name is 'number':
- return 'setDouble'
- if raw_name is 'string':
- return 'setString'
- if raw_name in ['any', 'object']:
- return 'setObject'
- if raw_name is 'array':
- return 'setInspectorArray'
- return None
- if (isinstance(_type, EnumType)):
- return 'setString'
- if (isinstance(_type, ObjectType)):
- return 'setObject'
- if (isinstance(_type, ArrayType)):
- return 'setInspectorArray'
- return None
-
- @staticmethod
- def objc_getter_method_for_member(declaration, member):
- return ObjCGenerator.objc_getter_method_for_member_internal(member.type, declaration, member)
-
- @staticmethod
- def objc_getter_method_for_member_internal(_type, declaration, member):
- if (isinstance(_type, AliasedType)):
- _type = _type.aliased_type
- if (isinstance(_type, PrimitiveType)):
- raw_name = _type.raw_name()
- if raw_name is 'boolean':
- return 'boolForKey'
- if raw_name is 'integer':
- return 'integerForKey'
- if raw_name is 'number':
- return 'doubleForKey'
- if raw_name is 'string':
- return 'stringForKey'
- if raw_name in ['any', 'object']:
- return 'objectForKey'
- if raw_name is 'array':
- return 'inspectorArrayForKey'
- return None
- if (isinstance(_type, EnumType)):
- return 'stringForKey'
- if (isinstance(_type, ObjectType)):
- return 'objectForKey'
- if (isinstance(_type, ArrayType)):
- return 'inspectorArrayForKey'
- return None
diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator_templates.py b/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator_templates.py
deleted file mode 100755
index ef712b8db..000000000
--- a/Source/JavaScriptCore/inspector/scripts/codegen/objc_generator_templates.py
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-# Generator templates, which can be filled with string.Template.
-# Following are classes that fill the templates from the typechecked model.
-
-class ObjCGeneratorTemplates:
-
- HeaderPrelude = (
- """#import <Foundation/Foundation.h>
-
-${includes}
-""")
-
- HeaderPostlude = (
- """""")
-
- ConversionHelpersPrelude = (
- """${includes}
-
-namespace Inspector {""")
-
- ConversionHelpersPostlude = (
- """} // namespace Inspector
-""")
-
- GenericHeaderPrelude = (
- """${includes}""")
-
- GenericHeaderPostlude = (
- """""")
-
- ConversionHelpersStandard = (
- """template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);""")
-
- BackendDispatcherHeaderPrelude = (
- """${includes}
-
-${forwardDeclarations}
-
-namespace Inspector {
-""")
-
- BackendDispatcherHeaderPostlude = (
- """} // namespace Inspector
-""")
-
- BackendDispatcherImplementationPrelude = (
- """#import "config.h"
-#import ${primaryInclude}
-
-${secondaryIncludes}
-
-namespace Inspector {""")
-
- BackendDispatcherImplementationPostlude = (
- """} // namespace Inspector
-""")
-
- ImplementationPrelude = (
- """#import "config.h"
-#import ${primaryInclude}
-
-${secondaryIncludes}
-
-using namespace Inspector;""")
-
- ImplementationPostlude = (
- """""")
-
- BackendDispatcherHeaderDomainHandlerInterfaceDeclaration = (
- """class Alternate${domainName}BackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~Alternate${domainName}BackendDispatcher() { }
-${commandDeclarations}
-};""")
-
- BackendDispatcherHeaderDomainHandlerObjCDeclaration = (
- """class ObjCInspector${domainName}BackendDispatcher final : public Alternate${domainName}BackendDispatcher {
-public:
- ObjCInspector${domainName}BackendDispatcher(id<${objcPrefix}${domainName}DomainHandler> handler) { m_delegate = handler; }
-${commandDeclarations}
-private:
- RetainPtr<id<${objcPrefix}${domainName}DomainHandler>> m_delegate;
-};""")
-
- BackendDispatcherHeaderDomainHandlerImplementation = (
- """void ObjCInspector${domainName}BackendDispatcher::${commandName}(${parameters})
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
-${successCallback}
-${conversions}
-${invocation}
-}
-""")
-
- ConfigurationCommandProperty = (
- """@property (nonatomic, retain, setter=set${domainName}Handler:) id<${objcPrefix}${domainName}DomainHandler> ${variableNamePrefix}Handler;""")
-
- ConfigurationEventProperty = (
- """@property (nonatomic, readonly) ${objcPrefix}${domainName}DomainEventDispatcher *${variableNamePrefix}EventDispatcher;""")
-
- ConfigurationCommandPropertyImplementation = (
- """- (void)set${domainName}Handler:(id<${objcPrefix}${domainName}DomainHandler>)handler
-{
- if (handler == _${variableNamePrefix}Handler)
- return;
-
- [_${variableNamePrefix}Handler release];
- _${variableNamePrefix}Handler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspector${domainName}BackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<${domainName}BackendDispatcher, Alternate${domainName}BackendDispatcher>>(ASCIILiteral("${domainName}"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<${objcPrefix}${domainName}DomainHandler>)${variableNamePrefix}Handler
-{
- return _${variableNamePrefix}Handler;
-}""")
-
- ConfigurationGetterImplementation = (
- """- (${objcPrefix}${domainName}DomainEventDispatcher *)${variableNamePrefix}EventDispatcher
-{
- if (!_${variableNamePrefix}EventDispatcher)
- _${variableNamePrefix}EventDispatcher = [[${objcPrefix}${domainName}DomainEventDispatcher alloc] initWithController:_controller];
- return _${variableNamePrefix}EventDispatcher;
-}""")
diff --git a/Source/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py b/Source/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py
index 53660318d..db163bfe4 100755
--- a/Source/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py
+++ b/Source/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py
@@ -66,4 +66,3 @@ for file in files:
print(string.rstrip())
print("]}")
-
diff --git a/Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py b/Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
deleted file mode 100755
index a1987aa90..000000000
--- a/Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
+++ /dev/null
@@ -1,211 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (c) 2014 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.
-
-# This script generates JS, Objective C, and C++ bindings for the inspector protocol.
-# Generators for individual files are located in the codegen/ directory.
-
-import os.path
-import re
-import sys
-import string
-from string import Template
-import optparse
-import logging
-
-try:
- import json
-except ImportError:
- import simplejson as json
-
-logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.ERROR)
-log = logging.getLogger('global')
-
-try:
- from codegen import *
-
-# When copying generator files to JavaScriptCore's private headers on Mac,
-# the codegen/ module directory is flattened. So, import directly.
-except ImportError, e:
- # log.error(e) # Uncomment this to debug early import errors.
- import models
- from models import *
- from generator import *
- from cpp_generator import *
- from objc_generator import *
-
- from generate_cpp_alternate_backend_dispatcher_header import *
- from generate_cpp_backend_dispatcher_header import *
- from generate_cpp_backend_dispatcher_implementation import *
- from generate_cpp_frontend_dispatcher_header import *
- from generate_cpp_frontend_dispatcher_implementation import *
- from generate_cpp_protocol_types_header import *
- from generate_cpp_protocol_types_implementation import *
- from generate_js_backend_commands import *
- from generate_objc_backend_dispatcher_header import *
- from generate_objc_backend_dispatcher_implementation import *
- from generate_objc_configuration_header import *
- from generate_objc_configuration_implementation import *
- from generate_objc_conversion_helpers import *
- from generate_objc_frontend_dispatcher_implementation import *
- from generate_objc_header import *
- from generate_objc_internal_header import *
- from generate_objc_protocol_types_implementation import *
-
-
-# A writer that only updates file if it actually changed.
-class IncrementalFileWriter:
- def __init__(self, filepath, force_output):
- self._filepath = filepath
- self._output = ""
- self.force_output = force_output
-
- def write(self, text):
- self._output += text
-
- def close(self):
- text_changed = True
- self._output = self._output.rstrip() + "\n"
-
- try:
- if self.force_output:
- raise
-
- read_file = open(self._filepath, "r")
- old_text = read_file.read()
- read_file.close()
- text_changed = old_text != self._output
- except:
- # Ignore, just overwrite by default
- pass
-
- if text_changed or self.force_output:
- out_file = open(self._filepath, "w")
- out_file.write(self._output)
- out_file.close()
-
-
-def generate_from_specification(primary_specification_filepath=None,
- supplemental_specification_filepaths=[],
- concatenate_output=False,
- output_dirpath=None,
- force_output=False,
- framework_name=""):
-
- def load_specification(protocol, filepath, isSupplemental=False):
- try:
- with open(filepath, "r") as input_file:
- parsed_json = json.load(input_file)
- protocol.parse_specification(parsed_json, isSupplemental)
- except ValueError as e:
- raise Exception("Error parsing valid JSON in file: " + filepath)
-
- protocol = models.Protocol(framework_name)
- for specification in supplemental_specification_filepaths:
- load_specification(protocol, specification, isSupplemental=True)
- load_specification(protocol, primary_specification_filepath, isSupplemental=False)
-
- protocol.resolve_types()
-
- generators = []
- is_test = protocol.framework is Frameworks.Test
- if is_test or protocol.framework is not Frameworks.WebInspector:
- generators.append(CppAlternateBackendDispatcherHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(JSBackendCommandsGenerator(protocol, primary_specification_filepath))
- generators.append(CppBackendDispatcherHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(CppBackendDispatcherImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(CppFrontendDispatcherHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(CppFrontendDispatcherImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(CppProtocolTypesHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(CppProtocolTypesImplementationGenerator(protocol, primary_specification_filepath))
- if is_test or protocol.framework is Frameworks.WebInspector:
- generators.append(ObjCBackendDispatcherHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCBackendDispatcherImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCConfigurationHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCConfigurationImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCConversionHelpersGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCFrontendDispatcherImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCHeaderGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCProtocolTypesImplementationGenerator(protocol, primary_specification_filepath))
- generators.append(ObjCInternalHeaderGenerator(protocol, primary_specification_filepath))
-
- single_output_file_contents = []
-
- for generator in generators:
- output = generator.generate_output()
- if concatenate_output:
- single_output_file_contents.append('### Begin File: %s' % generator.output_filename())
- single_output_file_contents.append(output)
- single_output_file_contents.append('### End File: %s' % generator.output_filename())
- single_output_file_contents.append('')
- else:
- output_file = IncrementalFileWriter(os.path.join(output_dirpath, generator.output_filename()), force_output)
- output_file.write(output)
- output_file.close()
-
- if concatenate_output:
- filename = os.path.join(os.path.basename(primary_specification_filepath) + '-result')
- output_file = IncrementalFileWriter(os.path.join(output_dirpath, filename), force_output)
- output_file.write('\n'.join(single_output_file_contents))
- output_file.close()
-
-
-if __name__ == '__main__':
- allowed_framework_names = ['JavaScriptCore', 'WebInspector', 'Test']
- cli_parser = optparse.OptionParser(usage="usage: %prog [options] PrimaryProtocol.json [SupplementalProtocol.json ...]")
- cli_parser.add_option("-o", "--outputDir", help="Directory where generated files should be written.")
- cli_parser.add_option("--framework", type="choice", choices=allowed_framework_names, help="The framework that the primary specification belongs to.")
- cli_parser.add_option("--force", action="store_true", help="Force output of generated scripts, even if nothing changed.")
- cli_parser.add_option("-v", "--debug", action="store_true", help="Log extra output for debugging the generator itself.")
- cli_parser.add_option("-t", "--test", action="store_true", help="Enable test mode. Use unique output filenames created by prepending the input filename.")
-
- options = None
-
- arg_options, arg_values = cli_parser.parse_args()
- if (len(arg_values) < 1):
- raise ParseException("At least one plain argument expected")
-
- if not arg_options.outputDir:
- raise ParseException("Missing output directory")
-
- if arg_options.debug:
- log.setLevel(logging.DEBUG)
-
- options = {
- 'primary_specification_filepath': arg_values[0],
- 'supplemental_specification_filepaths': arg_values[1:],
- 'output_dirpath': arg_options.outputDir,
- 'concatenate_output': arg_options.test,
- 'framework_name': arg_options.framework,
- 'force_output': arg_options.force
- }
-
- try:
- generate_from_specification(**options)
- except (ParseException, TypecheckException) as e:
- if arg_options.test:
- log.error(e.message)
- else:
- raise # Force the build to fail.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/commands-with-async-attribute.json b/Source/JavaScriptCore/inspector/scripts/tests/commands-with-async-attribute.json
deleted file mode 100644
index 11262e889..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/commands-with-async-attribute.json
+++ /dev/null
@@ -1,109 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "DatabaseId",
- "type": "integer",
- "description": "Unique identifier of Database object."
- },
- {
- "id": "PrimaryColors",
- "type": "string",
- "enum": ["red", "green", "blue"]
- },
- {
- "id": "ColorList",
- "type": "array",
- "items": { "$ref": "PrimaryColors" }
- },
- {
- "id": "Error",
- "type": "object",
- "description": "Database error.",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code." }
- ]
- }
- ],
- "commands": [
- {
- "name": "executeSQLSyncOptionalReturnValues",
- "parameters": [
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "query", "type": "string" }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "databaseId", "$ref": "DatabaseId", "optional": true },
- { "name": "sqlError", "$ref": "Error", "optional": true },
- { "name": "screenColor", "$ref": "PrimaryColors", "optional": true },
- { "name": "alternateColors", "$ref": "ColorList", "optional": true },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"], "optional": true }
- ]
- },
- {
- "name": "executeSQLAsyncOptionalReturnValues",
- "async": true,
- "parameters": [
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "query", "type": "string" }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "databaseId", "$ref": "DatabaseId", "optional": true },
- { "name": "sqlError", "$ref": "Error", "optional": true },
- { "name": "screenColor", "$ref": "PrimaryColors", "optional": true },
- { "name": "alternateColors", "$ref": "ColorList", "optional": true },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"], "optional": true }
- ]
- },
- {
- "name": "executeSQLSync",
- "parameters": [
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "query", "type": "string" }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "sqlError", "$ref": "Error" },
- { "name": "alternateColors", "$ref": "ColorList" },
- { "name": "screenColor", "$ref": "PrimaryColors" },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"] }
- ]
- },
- {
- "name": "executeSQLAsync",
- "async": true,
- "parameters": [
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "query", "type": "string" }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "sqlError", "$ref": "Error" },
- { "name": "screenColor", "$ref": "PrimaryColors" },
- { "name": "alternateColors", "$ref": "ColorList" },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"] }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/commands-with-optional-call-return-parameters.json b/Source/JavaScriptCore/inspector/scripts/tests/commands-with-optional-call-return-parameters.json
deleted file mode 100644
index 361d57d82..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/commands-with-optional-call-return-parameters.json
+++ /dev/null
@@ -1,85 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "DatabaseId",
- "type": "integer",
- "description": "Unique identifier of Database object."
- },
- {
- "id": "PrimaryColors",
- "type": "string",
- "enum": ["red", "green", "blue"]
- },
- {
- "id": "ColorList",
- "type": "array",
- "items": { "$ref": "PrimaryColors" }
- },
- {
- "id": "Error",
- "type": "object",
- "description": "Database error.",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code." }
- ]
- }
- ],
- "commands": [
- {
- "name": "executeAllOptionalParameters",
- "parameters": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "databaseId", "$ref": "DatabaseId", "optional": true },
- { "name": "sqlError", "$ref": "Error", "optional": true },
- { "name": "screenColor", "$ref": "PrimaryColors", "optional": true },
- { "name": "alternateColors", "$ref": "ColorList", "optional": true },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"], "optional": true }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "databaseId", "$ref": "DatabaseId", "optional": true },
- { "name": "sqlError", "$ref": "Error", "optional": true },
- { "name": "screenColor", "$ref": "PrimaryColors", "optional": true },
- { "name": "alternateColors", "$ref": "ColorList", "optional": true },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"], "optional": true }
- ]
- },
- {
- "name": "executeNoOptionalParameters",
- "parameters": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "sqlError", "$ref": "Error" },
- { "name": "screenColor", "$ref": "PrimaryColors" },
- { "name": "alternateColors", "$ref": "ColorList" },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"] }
- ],
- "returns": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "databaseId", "$ref": "DatabaseId" },
- { "name": "sqlError", "$ref": "Error" },
- { "name": "screenColor", "$ref": "PrimaryColors" },
- { "name": "alternateColors", "$ref": "ColorList" },
- { "name": "printColor", "type": "string", "enum": ["cyan", "magenta", "yellow", "black"] }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/domains-with-varying-command-sizes.json b/Source/JavaScriptCore/inspector/scripts/tests/domains-with-varying-command-sizes.json
deleted file mode 100644
index 94a8ecb17..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/domains-with-varying-command-sizes.json
+++ /dev/null
@@ -1,54 +0,0 @@
-[
-{
- "domain": "Network1",
- "commands": [
- {
- "name": "loadResource1",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- }
- ]
-},
-{
- "domain": "Network2",
- "types": [
- {
- "id": "LoaderId",
- "type": "string",
- "description": "Unique loader identifier."
- }
- ]
-},
-{
- "domain": "Network3",
- "commands": [
- {
- "name": "loadResource1",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource2",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource3",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource4",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource5",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource6",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- },
- {
- "name": "loadResource7",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/enum-values.json b/Source/JavaScriptCore/inspector/scripts/tests/enum-values.json
deleted file mode 100644
index cdad61df7..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/enum-values.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{"domains":[
-{
- "domain": "TypeDomain",
- "types": [
- {
- "id": "TypeDomainEnum",
- "type": "string",
- "enum": ["shared", "red", "green", "blue"]
- }
- ]
-},
-{
- "domain": "CommandDomain",
- "commands": [
- {
- "name": "commandWithEnumReturnValue",
- "parameters": [],
- "returns": [
- { "name": "returnValue", "type": "string", "enum": ["shared", "cyan", "magenta", "yellow"] }
- ]
- }
- ]
-},
-{
- "domain": "EventDomain",
- "events": [
- {
- "name": "eventWithEnumParameter",
- "parameters": [
- { "name": "parameter", "type": "string", "enum": ["shared", "black", "white"] }
- ]
- }
- ]
-}
-]}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/events-with-optional-parameters.json b/Source/JavaScriptCore/inspector/scripts/tests/events-with-optional-parameters.json
deleted file mode 100644
index cabbf10b8..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/events-with-optional-parameters.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "DatabaseId",
- "type": "string",
- "description": "Unique identifier of Database object."
- },
- {
- "id": "PrimaryColors",
- "type": "string",
- "values": ["red", "green", "blue"]
- },
- {
- "id": "ColorList",
- "type": "array",
- "items": { "$ref": "PrimaryColors" }
- },
- {
- "id": "Error",
- "type": "object",
- "description": "Database error.",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code." }
- ]
- }
- ],
- "events": [
- {
- "name": "didExecuteOptionalParameters",
- "parameters": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "sqlError", "$ref": "Error", "optional": true },
- { "name": "screenColor", "$ref": "PrimaryColors", "optional": true },
- { "name": "alternateColors", "$ref": "ColorList", "optional": true },
- { "name": "printColor", "type": "string", "values": ["cyan", "magenta", "yellow", "black"], "optional": true }
- ]
- },
- {
- "name": "didExecuteNoOptionalParameters",
- "parameters": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "sqlError", "$ref": "Error" },
- { "name": "screenColor", "$ref": "PrimaryColors" },
- { "name": "alternateColors", "$ref": "ColorList" },
- { "name": "printColor", "type": "string", "values": ["cyan", "magenta", "yellow", "black"] }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-async-attribute.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-async-attribute.json-result
deleted file mode 100644
index 15d6a4d9e..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-async-attribute.json-result
+++ /dev/null
@@ -1,1637 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-class AlternateDatabaseBackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateDatabaseBackendDispatcher() { }
- virtual void executeSQLSyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0;
- virtual void executeSQLAsyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) = 0;
- virtual void executeSQLSync(long callId, int in_databaseId, const String& in_query) = 0;
- virtual void executeSQLAsync(long callId, int in_databaseId, const String& in_query) = 0;
-};
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Database.
-InspectorBackend.registerDatabaseDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Database");
-InspectorBackend.registerEnum("Database.PrimaryColors", {Red: "red", Green: "green", Blue: "blue"});
-InspectorBackend.registerCommand("Database.executeSQLSyncOptionalReturnValues", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.registerCommand("Database.executeSQLAsyncOptionalReturnValues", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.registerCommand("Database.executeSQLSync", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "alternateColors", "screenColor", "printColor"]);
-InspectorBackend.registerCommand("Database.executeSQLAsync", [{"name": "databaseId", "type": "number", "optional": false}, {"name": "query", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.activateDomain("Database");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-class AlternateDatabaseBackendDispatcher;
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-class DatabaseBackendDispatcherHandler {
-public:
- // Named after parameter 'screenColor' while generating command/event executeSQLSyncOptionalReturnValues.
- enum class ScreenColor {
- Red = 0,
- Green = 1,
- Blue = 2,
- }; // enum class ScreenColor
- // Named after parameter 'printColor' while generating command/event executeSQLSyncOptionalReturnValues.
- enum class PrintColor {
- Cyan = 3,
- Magenta = 4,
- Yellow = 5,
- Black = 6,
- }; // enum class PrintColor
- virtual void executeSQLSyncOptionalReturnValues(ErrorString&, int in_databaseId, const String& in_query, RefPtr<Inspector::Protocol::Array<String>>& opt_out_columnNames, Inspector::Protocol::OptOutput<String>* opt_out_notes, Inspector::Protocol::OptOutput<double>* opt_out_timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* opt_out_values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* opt_out_payload, Inspector::Protocol::OptOutput<int>* opt_out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& opt_out_sqlError, Inspector::Protocol::Database::PrimaryColors* opt_out_screenColor, RefPtr<Inspector::Protocol::Database::ColorList>& opt_out_alternateColors, DatabaseBackendDispatcherHandler::PrintColor* opt_out_printColor) = 0;
- class ExecuteSQLAsyncOptionalReturnValuesCallback : public BackendDispatcher::CallbackBase {
- public:
- ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&&, int id);
- void sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, Inspector::Protocol::OptOutput<String>* notes, Inspector::Protocol::OptOutput<double>* timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* payload, Inspector::Protocol::OptOutput<int>* databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::OptOutput<String>* screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Inspector::Protocol::OptOutput<String>* printColor);
- };
- virtual void executeSQLAsyncOptionalReturnValues(ErrorString&, int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncOptionalReturnValuesCallback>&& callback) = 0;
- virtual void executeSQLSync(ErrorString&, int in_databaseId, const String& in_query, RefPtr<Inspector::Protocol::Array<String>>& out_columnNames, String* out_notes, double* out_timestamp, Inspector::InspectorObject* out_values, Inspector::InspectorValue* out_payload, int* out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& out_sqlError, RefPtr<Inspector::Protocol::Database::ColorList>& out_alternateColors, Inspector::Protocol::Database::PrimaryColors* out_screenColor, DatabaseBackendDispatcherHandler::PrintColor* out_printColor) = 0;
- class ExecuteSQLAsyncCallback : public BackendDispatcher::CallbackBase {
- public:
- ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&&, int id);
- void sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, const String& notes, double timestamp, Inspector::InspectorObject values, Inspector::InspectorValue payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, const String& screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, const String& printColor);
- };
- virtual void executeSQLAsync(ErrorString&, int in_databaseId, const String& in_query, Ref<ExecuteSQLAsyncCallback>&& callback) = 0;
-protected:
- virtual ~DatabaseBackendDispatcherHandler();
-};
-
-class DatabaseBackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<DatabaseBackendDispatcher> create(BackendDispatcher*, DatabaseBackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void executeSQLSyncOptionalReturnValues(long callId, const InspectorObject& message);
- void executeSQLAsyncOptionalReturnValues(long callId, const InspectorObject& message);
- void executeSQLSync(long callId, const InspectorObject& message);
- void executeSQLAsync(long callId, const InspectorObject& message);
-private:
- DatabaseBackendDispatcher(BackendDispatcher&, DatabaseBackendDispatcherHandler*);
- DatabaseBackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateDatabaseBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateDatabaseBackendDispatcher* m_alternateDispatcher;
-#endif
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-DatabaseBackendDispatcherHandler::~DatabaseBackendDispatcherHandler() { }
-
-Ref<DatabaseBackendDispatcher> DatabaseBackendDispatcher::create(BackendDispatcher* backendDispatcher, DatabaseBackendDispatcherHandler* agent)
-{
- return adoptRef(*new DatabaseBackendDispatcher(*backendDispatcher, agent));
-}
-
-DatabaseBackendDispatcher::DatabaseBackendDispatcher(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Database"), this);
-}
-
-void DatabaseBackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<DatabaseBackendDispatcher> protect(*this);
-
- if (method == "executeSQLSyncOptionalReturnValues")
- executeSQLSyncOptionalReturnValues(callId, message);
- else if (method == "executeSQLAsyncOptionalReturnValues")
- executeSQLAsyncOptionalReturnValues(callId, message);
- else if (method == "executeSQLSync")
- executeSQLSync(callId, message);
- else if (method == "executeSQLAsync")
- executeSQLAsync(callId, message);
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "Database", '.', method, "' was not found"));
-}
-
-void DatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- int in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), nullptr, protocolErrors.get());
- String in_query = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("query"), nullptr, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLSyncOptionalReturnValues");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeSQLSyncOptionalReturnValues(callId, in_databaseId, in_query);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
- Inspector::Protocol::OptOutput<String> out_notes;
- Inspector::Protocol::OptOutput<double> out_timestamp;
- Inspector::Protocol::OptOutput<Inspector::InspectorObject> out_values;
- Inspector::Protocol::OptOutput<Inspector::InspectorValue> out_payload;
- Inspector::Protocol::OptOutput<Inspector::Protocol::Database::DatabaseId> out_databaseId;
- RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
- Inspector::Protocol::Database::PrimaryColors out_screenColor;
- RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
- DatabaseBackendDispatcherHandler::PrintColor out_printColor;
- m_agent->executeSQLSyncOptionalReturnValues(error, in_databaseId, in_query, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, &out_screenColor, out_alternateColors, &out_printColor);
-
- if (!error.length()) {
- if (out_columnNames)
- result->setArray(ASCIILiteral("columnNames"), out_columnNames);
- if (out_notes.isAssigned())
- result->setString(ASCIILiteral("notes"), out_notes.getValue());
- if (out_timestamp.isAssigned())
- result->setDouble(ASCIILiteral("timestamp"), out_timestamp.getValue());
- if (out_values.isAssigned())
- result->setObject(ASCIILiteral("values"), out_values.getValue());
- if (out_payload.isAssigned())
- result->setValue(ASCIILiteral("payload"), out_payload.getValue());
- if (out_databaseId.isAssigned())
- result->setInteger(ASCIILiteral("databaseId"), out_databaseId.getValue());
- if (out_sqlError)
- result->setObject(ASCIILiteral("sqlError"), out_sqlError);
- if (out_screenColor.isAssigned())
- result->setString(ASCIILiteral("screenColor"), out_screenColor.getValue());
- if (out_alternateColors)
- result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
- if (out_printColor.isAssigned())
- result->setString(ASCIILiteral("printColor"), out_printColor.getValue());
- }
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::ExecuteSQLAsyncOptionalReturnValuesCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTF::move(backendDispatcher), id) { }
-
-void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback::sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, Inspector::Protocol::OptOutput<String>* notes, Inspector::Protocol::OptOutput<double>* timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* payload, Inspector::Protocol::OptOutput<int>* databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, Inspector::Protocol::OptOutput<String>* screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, Inspector::Protocol::OptOutput<String>* printColor)
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- if (columnNames)
- jsonMessage->setArray(ASCIILiteral("columnNames"), columnNames);
- if (notes.isAssigned())
- jsonMessage->setString(ASCIILiteral("notes"), notes.getValue());
- if (timestamp.isAssigned())
- jsonMessage->setDouble(ASCIILiteral("timestamp"), timestamp.getValue());
- if (values.isAssigned())
- jsonMessage->setObject(ASCIILiteral("values"), values.getValue());
- if (payload.isAssigned())
- jsonMessage->setValue(ASCIILiteral("payload"), payload.getValue());
- if (databaseId.isAssigned())
- jsonMessage->setInteger(ASCIILiteral("databaseId"), databaseId.getValue());
- if (sqlError)
- jsonMessage->setObject(ASCIILiteral("sqlError"), sqlError);
- if (screenColor.isAssigned())
- jsonMessage->setString(ASCIILiteral("screenColor"), screenColor.getValue());
- if (alternateColors)
- jsonMessage->setArray(ASCIILiteral("alternateColors"), alternateColors);
- if (printColor.isAssigned())
- jsonMessage->setString(ASCIILiteral("printColor"), printColor.getValue());
- sendIfActive(WTF::move(jsonMessage), ErrorString());
-}
-
-void DatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- int in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), nullptr, protocolErrors.get());
- String in_query = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("query"), nullptr, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLAsyncOptionalReturnValues");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeSQLAsyncOptionalReturnValues(callId, in_databaseId, in_query);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncOptionalReturnValuesCallback(m_backendDispatcher.copyRef(), callId));
- m_agent->executeSQLAsyncOptionalReturnValues(error, in_databaseId, in_query, callback.copyRef());
-
- if (error.length()) {
- callback->disable();
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::ServerError, error);
- return;
- }
-}
-
-void DatabaseBackendDispatcher::executeSQLSync(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- int in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), nullptr, protocolErrors.get());
- String in_query = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("query"), nullptr, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLSync");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeSQLSync(callId, in_databaseId, in_query);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
- String out_notes;
- double out_timestamp;
- Inspector::InspectorObject out_values;
- Inspector::InspectorValue out_payload;
- Inspector::Protocol::Database::DatabaseId out_databaseId;
- RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
- RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
- Inspector::Protocol::Database::PrimaryColors out_screenColor;
- DatabaseBackendDispatcherHandler::PrintColor out_printColor;
- m_agent->executeSQLSync(error, in_databaseId, in_query, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, out_alternateColors, &out_screenColor, &out_printColor);
-
- if (!error.length()) {
- result->setArray(ASCIILiteral("columnNames"), out_columnNames);
- result->setString(ASCIILiteral("notes"), out_notes);
- result->setDouble(ASCIILiteral("timestamp"), out_timestamp);
- result->setObject(ASCIILiteral("values"), out_values);
- result->setValue(ASCIILiteral("payload"), out_payload);
- result->setInteger(ASCIILiteral("databaseId"), out_databaseId);
- result->setObject(ASCIILiteral("sqlError"), out_sqlError);
- result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
- result->setString(ASCIILiteral("screenColor"), Inspector::Protocol::getEnumConstantValue(out_screenColor));
- result->setString(ASCIILiteral("printColor"), Inspector::Protocol::getEnumConstantValue(out_printColor));
- }
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::ExecuteSQLAsyncCallback(Ref<BackendDispatcher>&& backendDispatcher, int id) : BackendDispatcher::CallbackBase(WTF::move(backendDispatcher), id) { }
-
-void DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback::sendSuccess(RefPtr<Inspector::Protocol::Array<String>>&& columnNames, const String& notes, double timestamp, Inspector::InspectorObject values, Inspector::InspectorValue payload, int databaseId, RefPtr<Inspector::Protocol::Database::Error>&& sqlError, const String& screenColor, RefPtr<Inspector::Protocol::Database::ColorList>&& alternateColors, const String& printColor)
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setArray(ASCIILiteral("columnNames"), columnNames);
- jsonMessage->setString(ASCIILiteral("notes"), notes);
- jsonMessage->setDouble(ASCIILiteral("timestamp"), timestamp);
- jsonMessage->setObject(ASCIILiteral("values"), values);
- jsonMessage->setValue(ASCIILiteral("payload"), payload);
- jsonMessage->setInteger(ASCIILiteral("databaseId"), databaseId);
- jsonMessage->setObject(ASCIILiteral("sqlError"), sqlError);
- jsonMessage->setString(ASCIILiteral("screenColor"), Inspector::Protocol::getEnumConstantValue(screenColor));
- jsonMessage->setArray(ASCIILiteral("alternateColors"), alternateColors);
- jsonMessage->setString(ASCIILiteral("printColor"), Inspector::Protocol::getEnumConstantValue(printColor));
- sendIfActive(WTF::move(jsonMessage), ErrorString());
-}
-
-void DatabaseBackendDispatcher::executeSQLAsync(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- int in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), nullptr, protocolErrors.get());
- String in_query = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("query"), nullptr, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeSQLAsync");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeSQLAsync(callId, in_databaseId, in_query);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- Ref<DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback> callback = adoptRef(*new DatabaseBackendDispatcherHandler::ExecuteSQLAsyncCallback(m_backendDispatcher.copyRef(), callId));
- m_agent->executeSQLAsync(error, in_databaseId, in_query, callback.copyRef());
-
- if (error.length()) {
- callback->disable();
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::ServerError, error);
- return;
- }
-}
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Database {
-class Error;
-enum class PrimaryColors;
-} // Database
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Database {
-/* Unique identifier of Database object. */
-typedef int DatabaseId;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Database::PrimaryColors> ColorList;
-} // Database
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Database {
-/* */
-enum class PrimaryColors {
- Red = 0,
- Green = 1,
- Blue = 2,
-}; // enum class PrimaryColors
-/* Database error. */
-class Error : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- MessageSet = 1 << 0,
- CodeSet = 1 << 1,
- AllFieldsSet = (MessageSet | CodeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*Error*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class Error;
- public:
-
- Builder<STATE | MessageSet>& setMessage(const String& value)
- {
- COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
- m_result->setString(ASCIILiteral("message"), value);
- return castState<MessageSet>();
- }
-
- Builder<STATE | CodeSet>& setCode(int value)
- {
- COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
- m_result->setInteger(ASCIILiteral("code"), value);
- return castState<CodeSet>();
- }
-
- Ref<Error> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(Error) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<Error>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<Error> result = Error::create()
- * .setMessage(...)
- * .setCode(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Database
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "red",
- "green",
- "blue",
- "cyan",
- "magenta",
- "yellow",
- "black",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#include <wtf/RetainPtr.h>
-
-@protocol RWIProtocolDatabaseDomainHandler;
-
-namespace Inspector {
-
-
-class ObjCInspectorDatabaseBackendDispatcher final : public AlternateDatabaseBackendDispatcher {
-public:
- ObjCInspectorDatabaseBackendDispatcher(id<RWIProtocolDatabaseDomainHandler> handler) { m_delegate = handler; }
- virtual void executeSQLSyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) override;
- virtual void executeSQLAsyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query) override;
- virtual void executeSQLSync(long callId, int in_databaseId, const String& in_query) override;
- virtual void executeSQLAsync(long callId, int in_databaseId, const String& in_query) override;
-private:
- RetainPtr<id<RWIProtocolDatabaseDomainHandler>> m_delegate;
-};
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- id<RWIProtocolDatabaseDomainHandler> _databaseHandler;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_databaseHandler release];
- [super dealloc];
-}
-
-- (void)setDatabaseHandler:(id<RWIProtocolDatabaseDomainHandler>)handler
-{
- if (handler == _databaseHandler)
- return;
-
- [_databaseHandler release];
- _databaseHandler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorDatabaseBackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<DatabaseBackendDispatcher, AlternateDatabaseBackendDispatcher>>(ASCIILiteral("Database"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolDatabaseDomainHandler>)databaseHandler
-{
- return _databaseHandler;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, retain, setter=setDatabaseHandler:) id<RWIProtocolDatabaseDomainHandler> databaseHandler;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-void ObjCInspectorDatabaseBackendDispatcher::executeSQLSyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
- if (columnNames)
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(*columnNames));
- if (notes)
- resultObject->setString(ASCIILiteral("notes"), *notes);
- if (timestamp)
- resultObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
- if (values)
- resultObject->setObject(ASCIILiteral("values"), [*values toInspectorObject]);
- if (payload)
- resultObject->setValue(ASCIILiteral("payload"), [*payload toInspectorObject]);
- if (databaseId)
- resultObject->setInteger(ASCIILiteral("databaseId"), *databaseId);
- if (sqlError)
- resultObject->setObject(ASCIILiteral("sqlError"), [*sqlError toInspectorObject]);
- if (screenColor)
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(*screenColor));
- if (alternateColors)
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(*alternateColors));
- if (printColor)
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(*printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- int o_in_databaseId = in_databaseId;
- NSString *o_in_query = in_query;
-
- [m_delegate executeSQLSyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
-}
-
-void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsyncOptionalReturnValues(long callId, int in_databaseId, const String& in_query)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
- if (columnNames)
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(*columnNames));
- if (notes)
- resultObject->setString(ASCIILiteral("notes"), *notes);
- if (timestamp)
- resultObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
- if (values)
- resultObject->setObject(ASCIILiteral("values"), [*values toInspectorObject]);
- if (payload)
- resultObject->setValue(ASCIILiteral("payload"), [*payload toInspectorObject]);
- if (databaseId)
- resultObject->setInteger(ASCIILiteral("databaseId"), *databaseId);
- if (sqlError)
- resultObject->setObject(ASCIILiteral("sqlError"), [*sqlError toInspectorObject]);
- if (screenColor)
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(*screenColor));
- if (alternateColors)
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(*alternateColors));
- if (printColor)
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(*printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- int o_in_databaseId = in_databaseId;
- NSString *o_in_query = in_query;
-
- [m_delegate executeSQLAsyncOptionalReturnValuesWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
-}
-
-void ObjCInspectorDatabaseBackendDispatcher::executeSQLSync(long callId, int in_databaseId, const String& in_query)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabasePrimaryColors screenColor, RWIProtocolDatabaseExecuteSQLSyncPrintColor printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
- resultObject->setString(ASCIILiteral("notes"), notes);
- resultObject->setDouble(ASCIILiteral("timestamp"), timestamp);
- resultObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
- resultObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
- resultObject->setInteger(ASCIILiteral("databaseId"), databaseId);
- resultObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(screenColor));
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- int o_in_databaseId = in_databaseId;
- NSString *o_in_query = in_query;
-
- [m_delegate executeSQLSyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
-}
-
-void ObjCInspectorDatabaseBackendDispatcher::executeSQLAsync(long callId, int in_databaseId, const String& in_query)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteSQLAsyncPrintColor printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
- resultObject->setString(ASCIILiteral("notes"), notes);
- resultObject->setDouble(ASCIILiteral("timestamp"), timestamp);
- resultObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
- resultObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
- resultObject->setInteger(ASCIILiteral("databaseId"), databaseId);
- resultObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(screenColor));
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- int o_in_databaseId = in_databaseId;
- NSString *o_in_query = in_query;
-
- [m_delegate executeSQLAsyncWithErrorCallback:errorCallback successCallback:successCallback databaseId:o_in_databaseId query:o_in_query];
-}
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolDatabasePrimaryColors value)
-{
- switch(value) {
- case RWIProtocolDatabasePrimaryColorsRed:
- return ASCIILiteral("red");
- case RWIProtocolDatabasePrimaryColorsGreen:
- return ASCIILiteral("green");
- case RWIProtocolDatabasePrimaryColorsBlue:
- return ASCIILiteral("blue");
- }
-}
-
-template<>
-inline RWIProtocolDatabasePrimaryColors fromProtocolString(const String& value)
-{
- if (value == "red")
- return RWIProtocolDatabasePrimaryColorsRed;
- if (value == "green")
- return RWIProtocolDatabasePrimaryColorsGreen;
- if (value == "blue")
- return RWIProtocolDatabasePrimaryColorsBlue;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabasePrimaryColorsRed;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteSQLSyncPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteSQLSyncPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteSQLAsyncPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteSQLAsyncPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolDatabaseError;
-
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabasePrimaryColors) {
- RWIProtocolDatabasePrimaryColorsRed,
- RWIProtocolDatabasePrimaryColorsGreen,
- RWIProtocolDatabasePrimaryColorsBlue,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor) {
- RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorCyan,
- RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorMagenta,
- RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorYellow,
- RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor) {
- RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorCyan,
- RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorMagenta,
- RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorYellow,
- RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLSyncPrintColor) {
- RWIProtocolDatabaseExecuteSQLSyncPrintColorCyan,
- RWIProtocolDatabaseExecuteSQLSyncPrintColorMagenta,
- RWIProtocolDatabaseExecuteSQLSyncPrintColorYellow,
- RWIProtocolDatabaseExecuteSQLSyncPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteSQLAsyncPrintColor) {
- RWIProtocolDatabaseExecuteSQLAsyncPrintColorCyan,
- RWIProtocolDatabaseExecuteSQLAsyncPrintColorMagenta,
- RWIProtocolDatabaseExecuteSQLAsyncPrintColorYellow,
- RWIProtocolDatabaseExecuteSQLAsyncPrintColorBlack,
-};
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseError : RWIProtocolJSONObject
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-/* required */ @property (nonatomic, copy) NSString *message;
-/* required */ @property (nonatomic, assign) int code;
-@end
-
-@protocol RWIProtocolDatabaseDomainHandler <NSObject>
-@required
-- (void)executeSQLSyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLSyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
-- (void)executeSQLAsyncOptionalReturnValuesWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteSQLAsyncOptionalReturnValuesPrintColor *printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
-- (void)executeSQLSyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabasePrimaryColors screenColor, RWIProtocolDatabaseExecuteSQLSyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
-- (void)executeSQLAsyncWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteSQLAsyncPrintColor printColor))successCallback databaseId:(int)databaseId query:(NSString *)query;
-@end
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolDatabaseError
-
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
-
- self.message = message;
- self.code = code;
-
- return self;
-}
-
-- (void)setMessage:(NSString *)message
-{
- [super setString:message forKey:@"message"];
-}
-
-- (NSString *)message
-{
- return [super stringForKey:@"message"];
-}
-
-- (void)setCode:(int)code
-{
- [super setInteger:code forKey:@"code"];
-}
-
-- (int)code
-{
- return [super integerForKey:@"code"];
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-async-attribute.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result
deleted file mode 100644
index e349ecf6f..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result
+++ /dev/null
@@ -1,1486 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-class AlternateDatabaseBackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateDatabaseBackendDispatcher() { }
- virtual void executeAllOptionalParameters(long callId, const Inspector::InspectorArray* in_columnNames, const String* in_notes, const double* in_timestamp, const Inspector::InspectorObject* in_values, const Inspector::InspectorValue* in_payload, const int* in_databaseId, const Inspector::InspectorObject* in_sqlError, const String* in_screenColor, const Inspector::InspectorArray* in_alternateColors, const String* in_printColor) = 0;
- virtual void executeNoOptionalParameters(long callId, const Inspector::InspectorArray& in_columnNames, const String& in_notes, double in_timestamp, const Inspector::InspectorObject& in_values, Inspector::InspectorValue in_payload, int in_databaseId, const Inspector::InspectorObject& in_sqlError, const String& in_screenColor, const Inspector::InspectorArray& in_alternateColors, const String& in_printColor) = 0;
-};
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Database.
-InspectorBackend.registerEnum("Database.PrimaryColors", {Red: "red", Green: "green", Blue: "blue"});
-InspectorBackend.registerCommand("Database.executeAllOptionalParameters", [{"name": "columnNames", "type": "object", "optional": true}, {"name": "notes", "type": "string", "optional": true}, {"name": "timestamp", "type": "number", "optional": true}, {"name": "values", "type": "object", "optional": true}, {"name": "payload", "type": "object", "optional": true}, {"name": "databaseId", "type": "number", "optional": true}, {"name": "sqlError", "type": "object", "optional": true}, {"name": "screenColor", "type": "string", "optional": true}, {"name": "alternateColors", "type": "object", "optional": true}, {"name": "printColor", "type": "string", "optional": true}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.registerCommand("Database.executeNoOptionalParameters", [{"name": "columnNames", "type": "object", "optional": false}, {"name": "notes", "type": "string", "optional": false}, {"name": "timestamp", "type": "number", "optional": false}, {"name": "values", "type": "object", "optional": false}, {"name": "payload", "type": "object", "optional": false}, {"name": "databaseId", "type": "number", "optional": false}, {"name": "sqlError", "type": "object", "optional": false}, {"name": "screenColor", "type": "string", "optional": false}, {"name": "alternateColors", "type": "object", "optional": false}, {"name": "printColor", "type": "string", "optional": false}], ["columnNames", "notes", "timestamp", "values", "payload", "databaseId", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.activateDomain("Database");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-class AlternateDatabaseBackendDispatcher;
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-class DatabaseBackendDispatcherHandler {
-public:
- // Named after parameter 'screenColor' while generating command/event executeAllOptionalParameters.
- enum class ScreenColor {
- Red = 0,
- Green = 1,
- Blue = 2,
- }; // enum class ScreenColor
- // Named after parameter 'printColor' while generating command/event executeAllOptionalParameters.
- enum class PrintColor {
- Cyan = 3,
- Magenta = 4,
- Yellow = 5,
- Black = 6,
- }; // enum class PrintColor
- virtual void executeAllOptionalParameters(ErrorString&, const Inspector::InspectorArray* opt_in_columnNames, const String* opt_in_notes, const double* opt_in_timestamp, const Inspector::InspectorObject* opt_in_values, const Inspector::InspectorValue* opt_in_payload, const int* opt_in_databaseId, const Inspector::InspectorObject* opt_in_sqlError, const String* opt_in_screenColor, const Inspector::InspectorArray* opt_in_alternateColors, const String* opt_in_printColor, RefPtr<Inspector::Protocol::Array<String>>& opt_out_columnNames, Inspector::Protocol::OptOutput<String>* opt_out_notes, Inspector::Protocol::OptOutput<double>* opt_out_timestamp, Inspector::Protocol::OptOutput<Inspector::InspectorObject>* opt_out_values, Inspector::Protocol::OptOutput<Inspector::InspectorValue>* opt_out_payload, Inspector::Protocol::OptOutput<int>* opt_out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& opt_out_sqlError, Inspector::Protocol::Database::PrimaryColors* opt_out_screenColor, RefPtr<Inspector::Protocol::Database::ColorList>& opt_out_alternateColors, DatabaseBackendDispatcherHandler::PrintColor* opt_out_printColor) = 0;
- virtual void executeNoOptionalParameters(ErrorString&, const Inspector::InspectorArray& in_columnNames, const String& in_notes, double in_timestamp, const Inspector::InspectorObject& in_values, Inspector::InspectorValue in_payload, int in_databaseId, const Inspector::InspectorObject& in_sqlError, const String& in_screenColor, const Inspector::InspectorArray& in_alternateColors, const String& in_printColor, RefPtr<Inspector::Protocol::Array<String>>& out_columnNames, String* out_notes, double* out_timestamp, Inspector::InspectorObject* out_values, Inspector::InspectorValue* out_payload, int* out_databaseId, RefPtr<Inspector::Protocol::Database::Error>& out_sqlError, Inspector::Protocol::Database::PrimaryColors* out_screenColor, RefPtr<Inspector::Protocol::Database::ColorList>& out_alternateColors, DatabaseBackendDispatcherHandler::PrintColor* out_printColor) = 0;
-protected:
- virtual ~DatabaseBackendDispatcherHandler();
-};
-
-class DatabaseBackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<DatabaseBackendDispatcher> create(BackendDispatcher*, DatabaseBackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void executeAllOptionalParameters(long callId, const InspectorObject& message);
- void executeNoOptionalParameters(long callId, const InspectorObject& message);
-private:
- DatabaseBackendDispatcher(BackendDispatcher&, DatabaseBackendDispatcherHandler*);
- DatabaseBackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateDatabaseBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateDatabaseBackendDispatcher* m_alternateDispatcher;
-#endif
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-DatabaseBackendDispatcherHandler::~DatabaseBackendDispatcherHandler() { }
-
-Ref<DatabaseBackendDispatcher> DatabaseBackendDispatcher::create(BackendDispatcher* backendDispatcher, DatabaseBackendDispatcherHandler* agent)
-{
- return adoptRef(*new DatabaseBackendDispatcher(*backendDispatcher, agent));
-}
-
-DatabaseBackendDispatcher::DatabaseBackendDispatcher(BackendDispatcher& backendDispatcher, DatabaseBackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Database"), this);
-}
-
-void DatabaseBackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<DatabaseBackendDispatcher> protect(*this);
-
- if (method == "executeAllOptionalParameters")
- executeAllOptionalParameters(callId, message);
- else if (method == "executeNoOptionalParameters")
- executeNoOptionalParameters(callId, message);
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "Database", '.', method, "' was not found"));
-}
-
-void DatabaseBackendDispatcher::executeAllOptionalParameters(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- bool opt_in_columnNames_valueFound = false;
- RefPtr<Inspector::InspectorArray> opt_in_columnNames = BackendDispatcher::getArray(paramsContainer.get(), ASCIILiteral("columnNames"), &opt_in_columnNames_valueFound, protocolErrors.get());
- bool opt_in_notes_valueFound = false;
- String opt_in_notes = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("notes"), &opt_in_notes_valueFound, protocolErrors.get());
- bool opt_in_timestamp_valueFound = false;
- Inspector::Protocol::OptOutput<double> opt_in_timestamp = BackendDispatcher::getDouble(paramsContainer.get(), ASCIILiteral("timestamp"), &opt_in_timestamp_valueFound, protocolErrors.get());
- bool opt_in_values_valueFound = false;
- RefPtr<Inspector::InspectorObject> opt_in_values = BackendDispatcher::getObject(paramsContainer.get(), ASCIILiteral("values"), &opt_in_values_valueFound, protocolErrors.get());
- bool opt_in_payload_valueFound = false;
- RefPtr<Inspector::InspectorValue> opt_in_payload = BackendDispatcher::getValue(paramsContainer.get(), ASCIILiteral("payload"), &opt_in_payload_valueFound, protocolErrors.get());
- bool opt_in_databaseId_valueFound = false;
- int opt_in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), &opt_in_databaseId_valueFound, protocolErrors.get());
- bool opt_in_sqlError_valueFound = false;
- RefPtr<Inspector::InspectorObject> opt_in_sqlError = BackendDispatcher::getObject(paramsContainer.get(), ASCIILiteral("sqlError"), &opt_in_sqlError_valueFound, protocolErrors.get());
- bool opt_in_screenColor_valueFound = false;
- String opt_in_screenColor = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("screenColor"), &opt_in_screenColor_valueFound, protocolErrors.get());
- bool opt_in_alternateColors_valueFound = false;
- RefPtr<Inspector::InspectorArray> opt_in_alternateColors = BackendDispatcher::getArray(paramsContainer.get(), ASCIILiteral("alternateColors"), &opt_in_alternateColors_valueFound, protocolErrors.get());
- bool opt_in_printColor_valueFound = false;
- String opt_in_printColor = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("printColor"), &opt_in_printColor_valueFound, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeAllOptionalParameters");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeAllOptionalParameters(callId, opt_in_columnNames_valueFound ? opt_in_columnNames.get() : nullptr, opt_in_notes_valueFound ? &opt_in_notes : nullptr, opt_in_timestamp_valueFound ? &opt_in_timestamp : nullptr, opt_in_values_valueFound ? opt_in_values.get() : nullptr, opt_in_payload_valueFound ? opt_in_payload.get() : nullptr, opt_in_databaseId_valueFound ? &opt_in_databaseId : nullptr, opt_in_sqlError_valueFound ? opt_in_sqlError.get() : nullptr, opt_in_screenColor_valueFound ? &opt_in_screenColor : nullptr, opt_in_alternateColors_valueFound ? opt_in_alternateColors.get() : nullptr, opt_in_printColor_valueFound ? &opt_in_printColor : nullptr);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
- Inspector::Protocol::OptOutput<String> out_notes;
- Inspector::Protocol::OptOutput<double> out_timestamp;
- Inspector::Protocol::OptOutput<Inspector::InspectorObject> out_values;
- Inspector::Protocol::OptOutput<Inspector::InspectorValue> out_payload;
- Inspector::Protocol::OptOutput<Inspector::Protocol::Database::DatabaseId> out_databaseId;
- RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
- Inspector::Protocol::Database::PrimaryColors out_screenColor;
- RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
- DatabaseBackendDispatcherHandler::PrintColor out_printColor;
- m_agent->executeAllOptionalParameters(error, opt_in_columnNames_valueFound ? opt_in_columnNames.get() : nullptr, opt_in_notes_valueFound ? &opt_in_notes : nullptr, opt_in_timestamp_valueFound ? &opt_in_timestamp : nullptr, opt_in_values_valueFound ? opt_in_values.get() : nullptr, opt_in_payload_valueFound ? opt_in_payload.get() : nullptr, opt_in_databaseId_valueFound ? &opt_in_databaseId : nullptr, opt_in_sqlError_valueFound ? opt_in_sqlError.get() : nullptr, opt_in_screenColor_valueFound ? &opt_in_screenColor : nullptr, opt_in_alternateColors_valueFound ? opt_in_alternateColors.get() : nullptr, opt_in_printColor_valueFound ? &opt_in_printColor : nullptr, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, &out_screenColor, out_alternateColors, &out_printColor);
-
- if (!error.length()) {
- if (out_columnNames)
- result->setArray(ASCIILiteral("columnNames"), out_columnNames);
- if (out_notes.isAssigned())
- result->setString(ASCIILiteral("notes"), out_notes.getValue());
- if (out_timestamp.isAssigned())
- result->setDouble(ASCIILiteral("timestamp"), out_timestamp.getValue());
- if (out_values.isAssigned())
- result->setObject(ASCIILiteral("values"), out_values.getValue());
- if (out_payload.isAssigned())
- result->setValue(ASCIILiteral("payload"), out_payload.getValue());
- if (out_databaseId.isAssigned())
- result->setInteger(ASCIILiteral("databaseId"), out_databaseId.getValue());
- if (out_sqlError)
- result->setObject(ASCIILiteral("sqlError"), out_sqlError);
- if (out_screenColor.isAssigned())
- result->setString(ASCIILiteral("screenColor"), out_screenColor.getValue());
- if (out_alternateColors)
- result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
- if (out_printColor.isAssigned())
- result->setString(ASCIILiteral("printColor"), out_printColor.getValue());
- }
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void DatabaseBackendDispatcher::executeNoOptionalParameters(long callId, const InspectorObject& message)
-{
- auto protocolErrors = Inspector::Protocol::Array<String>::create();
- RefPtr<InspectorObject> paramsContainer;
- message.getObject(ASCIILiteral("params"), paramsContainer);
- RefPtr<Inspector::InspectorArray> in_columnNames = BackendDispatcher::getArray(paramsContainer.get(), ASCIILiteral("columnNames"), nullptr, protocolErrors.get());
- String in_notes = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("notes"), nullptr, protocolErrors.get());
- double in_timestamp = BackendDispatcher::getDouble(paramsContainer.get(), ASCIILiteral("timestamp"), nullptr, protocolErrors.get());
- RefPtr<Inspector::InspectorObject> in_values = BackendDispatcher::getObject(paramsContainer.get(), ASCIILiteral("values"), nullptr, protocolErrors.get());
- RefPtr<Inspector::InspectorValue> in_payload = BackendDispatcher::getValue(paramsContainer.get(), ASCIILiteral("payload"), nullptr, protocolErrors.get());
- int in_databaseId = BackendDispatcher::getInteger(paramsContainer.get(), ASCIILiteral("databaseId"), nullptr, protocolErrors.get());
- RefPtr<Inspector::InspectorObject> in_sqlError = BackendDispatcher::getObject(paramsContainer.get(), ASCIILiteral("sqlError"), nullptr, protocolErrors.get());
- String in_screenColor = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("screenColor"), nullptr, protocolErrors.get());
- RefPtr<Inspector::InspectorArray> in_alternateColors = BackendDispatcher::getArray(paramsContainer.get(), ASCIILiteral("alternateColors"), nullptr, protocolErrors.get());
- String in_printColor = BackendDispatcher::getString(paramsContainer.get(), ASCIILiteral("printColor"), nullptr, protocolErrors.get());
- if (protocolErrors->length()) {
- String errorMessage = String::format("Some arguments of method '%s' can't be processed", "Database.executeNoOptionalParameters");
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::InvalidParams, errorMessage, WTF::move(protocolErrors));
- return;
- }
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->executeNoOptionalParameters(callId, *in_columnNames, in_notes, in_timestamp, *in_values, *in_payload, in_databaseId, *in_sqlError, in_screenColor, *in_alternateColors, in_printColor);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- RefPtr<Inspector::Protocol::Array<String>> out_columnNames;
- String out_notes;
- double out_timestamp;
- Inspector::InspectorObject out_values;
- Inspector::InspectorValue out_payload;
- Inspector::Protocol::Database::DatabaseId out_databaseId;
- RefPtr<Inspector::Protocol::Database::Error> out_sqlError;
- Inspector::Protocol::Database::PrimaryColors out_screenColor;
- RefPtr<Inspector::Protocol::Database::ColorList> out_alternateColors;
- DatabaseBackendDispatcherHandler::PrintColor out_printColor;
- m_agent->executeNoOptionalParameters(error, *in_columnNames, in_notes, in_timestamp, *in_values, *in_payload, in_databaseId, *in_sqlError, in_screenColor, *in_alternateColors, in_printColor, out_columnNames, &out_notes, &out_timestamp, out_values, &out_payload, &out_databaseId, out_sqlError, &out_screenColor, out_alternateColors, &out_printColor);
-
- if (!error.length()) {
- result->setArray(ASCIILiteral("columnNames"), out_columnNames);
- result->setString(ASCIILiteral("notes"), out_notes);
- result->setDouble(ASCIILiteral("timestamp"), out_timestamp);
- result->setObject(ASCIILiteral("values"), out_values);
- result->setValue(ASCIILiteral("payload"), out_payload);
- result->setInteger(ASCIILiteral("databaseId"), out_databaseId);
- result->setObject(ASCIILiteral("sqlError"), out_sqlError);
- result->setString(ASCIILiteral("screenColor"), Inspector::Protocol::getEnumConstantValue(out_screenColor));
- result->setArray(ASCIILiteral("alternateColors"), out_alternateColors);
- result->setString(ASCIILiteral("printColor"), Inspector::Protocol::getEnumConstantValue(out_printColor));
- }
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Database {
-class Error;
-enum class PrimaryColors;
-} // Database
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Database {
-/* Unique identifier of Database object. */
-typedef int DatabaseId;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Database::PrimaryColors> ColorList;
-} // Database
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Database {
-/* */
-enum class PrimaryColors {
- Red = 0,
- Green = 1,
- Blue = 2,
-}; // enum class PrimaryColors
-/* Database error. */
-class Error : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- MessageSet = 1 << 0,
- CodeSet = 1 << 1,
- AllFieldsSet = (MessageSet | CodeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*Error*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class Error;
- public:
-
- Builder<STATE | MessageSet>& setMessage(const String& value)
- {
- COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
- m_result->setString(ASCIILiteral("message"), value);
- return castState<MessageSet>();
- }
-
- Builder<STATE | CodeSet>& setCode(int value)
- {
- COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
- m_result->setInteger(ASCIILiteral("code"), value);
- return castState<CodeSet>();
- }
-
- Ref<Error> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(Error) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<Error>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<Error> result = Error::create()
- * .setMessage(...)
- * .setCode(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Database
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "red",
- "green",
- "blue",
- "cyan",
- "magenta",
- "yellow",
- "black",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#include <wtf/RetainPtr.h>
-
-@protocol RWIProtocolDatabaseDomainHandler;
-
-namespace Inspector {
-
-
-class ObjCInspectorDatabaseBackendDispatcher final : public AlternateDatabaseBackendDispatcher {
-public:
- ObjCInspectorDatabaseBackendDispatcher(id<RWIProtocolDatabaseDomainHandler> handler) { m_delegate = handler; }
- virtual void executeAllOptionalParameters(long callId, const Inspector::InspectorArray* in_columnNames, const String* in_notes, const double* in_timestamp, const Inspector::InspectorObject* in_values, const Inspector::InspectorValue* in_payload, const int* in_databaseId, const Inspector::InspectorObject* in_sqlError, const String* in_screenColor, const Inspector::InspectorArray* in_alternateColors, const String* in_printColor) override;
- virtual void executeNoOptionalParameters(long callId, const Inspector::InspectorArray& in_columnNames, const String& in_notes, double in_timestamp, const Inspector::InspectorObject& in_values, Inspector::InspectorValue in_payload, int in_databaseId, const Inspector::InspectorObject& in_sqlError, const String& in_screenColor, const Inspector::InspectorArray& in_alternateColors, const String& in_printColor) override;
-private:
- RetainPtr<id<RWIProtocolDatabaseDomainHandler>> m_delegate;
-};
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- id<RWIProtocolDatabaseDomainHandler> _databaseHandler;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_databaseHandler release];
- [super dealloc];
-}
-
-- (void)setDatabaseHandler:(id<RWIProtocolDatabaseDomainHandler>)handler
-{
- if (handler == _databaseHandler)
- return;
-
- [_databaseHandler release];
- _databaseHandler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorDatabaseBackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<DatabaseBackendDispatcher, AlternateDatabaseBackendDispatcher>>(ASCIILiteral("Database"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolDatabaseDomainHandler>)databaseHandler
-{
- return _databaseHandler;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, retain, setter=setDatabaseHandler:) id<RWIProtocolDatabaseDomainHandler> databaseHandler;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-void ObjCInspectorDatabaseBackendDispatcher::executeAllOptionalParameters(long callId, const Inspector::InspectorArray* in_columnNames, const String* in_notes, const double* in_timestamp, const Inspector::InspectorObject* in_values, const Inspector::InspectorValue* in_payload, const int* in_databaseId, const Inspector::InspectorObject* in_sqlError, const String* in_screenColor, const Inspector::InspectorArray* in_alternateColors, const String* in_printColor)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor *printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
- if (columnNames)
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(*columnNames));
- if (notes)
- resultObject->setString(ASCIILiteral("notes"), *notes);
- if (timestamp)
- resultObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
- if (values)
- resultObject->setObject(ASCIILiteral("values"), [*values toInspectorObject]);
- if (payload)
- resultObject->setValue(ASCIILiteral("payload"), [*payload toInspectorObject]);
- if (databaseId)
- resultObject->setInteger(ASCIILiteral("databaseId"), *databaseId);
- if (sqlError)
- resultObject->setObject(ASCIILiteral("sqlError"), [*sqlError toInspectorObject]);
- if (screenColor)
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(*screenColor));
- if (alternateColors)
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(*alternateColors));
- if (printColor)
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(*printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- NSArray/*<NSString>*/ *o_in_columnNames;
- if (in_columnNames)
- o_in_columnNames = objcStringArray(in_columnNames);
- NSString *o_in_notes;
- if (in_notes)
- o_in_notes = *in_notes;
- double o_in_timestamp;
- if (in_timestamp)
- o_in_timestamp = *in_timestamp;
- RWIProtocolJSONObject *o_in_values;
- if (in_values)
- o_in_values = [[[RWIProtocolJSONObject alloc] initWithInspectorObject:in_values] autorelease];
- RWIProtocolJSONObject *o_in_payload;
- if (in_payload)
- o_in_payload = [[[RWIProtocolJSONObject alloc] initWithInspectorObject:in_payload] autorelease];
- int o_in_databaseId;
- if (in_databaseId)
- o_in_databaseId = *in_databaseId;
- RWIProtocolDatabaseError *o_in_sqlError;
- if (in_sqlError)
- o_in_sqlError = [[[RWIProtocolDatabaseError alloc] initWithInspectorObject:in_sqlError] autorelease];
- RWIProtocolDatabasePrimaryColors o_in_screenColor;
- if (in_screenColor)
- o_in_screenColor = fromProtocolString<RWIProtocolDatabasePrimaryColors>(*in_screenColor);
- NSArray/*<NSString>*/ *o_in_alternateColors;
- if (in_alternateColors)
- o_in_alternateColors = objcStringArray(in_alternateColors);
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor o_in_printColor;
- if (in_printColor)
- o_in_printColor = fromProtocolString<RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor>(*in_printColor);
-
- [m_delegate executeAllOptionalParametersWithErrorCallback:errorCallback successCallback:successCallback columnNames:(in_columnNames ? &o_in_columnNames : nil) notes:(in_notes ? &o_in_notes : nil) timestamp:(in_timestamp ? &o_in_timestamp : nil) values:(in_values ? &o_in_values : nil) payload:(in_payload ? &o_in_payload : nil) databaseId:(in_databaseId ? &o_in_databaseId : nil) sqlError:(in_sqlError ? &o_in_sqlError : nil) screenColor:(in_screenColor ? &o_in_screenColor : nil) alternateColors:(in_alternateColors ? &o_in_alternateColors : nil) printColor:(in_printColor ? &o_in_printColor : nil)];
-}
-
-void ObjCInspectorDatabaseBackendDispatcher::executeNoOptionalParameters(long callId, const Inspector::InspectorArray& in_columnNames, const String& in_notes, double in_timestamp, const Inspector::InspectorObject& in_values, Inspector::InspectorValue in_payload, int in_databaseId, const Inspector::InspectorObject& in_sqlError, const String& in_screenColor, const Inspector::InspectorArray& in_alternateColors, const String& in_printColor)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor printColor) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
- resultObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
- resultObject->setString(ASCIILiteral("notes"), notes);
- resultObject->setDouble(ASCIILiteral("timestamp"), timestamp);
- resultObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
- resultObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
- resultObject->setInteger(ASCIILiteral("databaseId"), databaseId);
- resultObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
- resultObject->setString(ASCIILiteral("screenColor"), toProtocolString(screenColor));
- resultObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
- resultObject->setString(ASCIILiteral("printColor"), toProtocolString(printColor));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- NSArray/*<NSString>*/ *o_in_columnNames = objcStringArray(&in_columnNames);
- NSString *o_in_notes = in_notes;
- double o_in_timestamp = in_timestamp;
- RWIProtocolJSONObject *o_in_values = [[[RWIProtocolJSONObject alloc] initWithInspectorObject:&in_values] autorelease];
- RWIProtocolJSONObject *o_in_payload = [[[RWIProtocolJSONObject alloc] initWithInspectorObject:&in_payload] autorelease];
- int o_in_databaseId = in_databaseId;
- RWIProtocolDatabaseError *o_in_sqlError = [[[RWIProtocolDatabaseError alloc] initWithInspectorObject:&in_sqlError] autorelease];
- RWIProtocolDatabasePrimaryColors o_in_screenColor = fromProtocolString<RWIProtocolDatabasePrimaryColors>(in_screenColor);
- NSArray/*<NSString>*/ *o_in_alternateColors = objcStringArray(&in_alternateColors);
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor o_in_printColor = fromProtocolString<RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor>(in_printColor);
-
- [m_delegate executeNoOptionalParametersWithErrorCallback:errorCallback successCallback:successCallback columnNames:o_in_columnNames notes:o_in_notes timestamp:o_in_timestamp values:o_in_values payload:o_in_payload databaseId:o_in_databaseId sqlError:o_in_sqlError screenColor:o_in_screenColor alternateColors:o_in_alternateColors printColor:o_in_printColor];
-}
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolDatabasePrimaryColors value)
-{
- switch(value) {
- case RWIProtocolDatabasePrimaryColorsRed:
- return ASCIILiteral("red");
- case RWIProtocolDatabasePrimaryColorsGreen:
- return ASCIILiteral("green");
- case RWIProtocolDatabasePrimaryColorsBlue:
- return ASCIILiteral("blue");
- }
-}
-
-template<>
-inline RWIProtocolDatabasePrimaryColors fromProtocolString(const String& value)
-{
- if (value == "red")
- return RWIProtocolDatabasePrimaryColorsRed;
- if (value == "green")
- return RWIProtocolDatabasePrimaryColorsGreen;
- if (value == "blue")
- return RWIProtocolDatabasePrimaryColorsBlue;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabasePrimaryColorsRed;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan;
-}
-
-inline String toProtocolString(RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor value)
-{
- switch(value) {
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow:
- return ASCIILiteral("yellow");
- case RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack:
- return ASCIILiteral("black");
- }
-}
-
-template<>
-inline RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor fromProtocolString(const String& value)
-{
- if (value == "cyan")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan;
- if (value == "magenta")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta;
- if (value == "yellow")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow;
- if (value == "black")
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack;
- ASSERT_NOT_REACHED();
- return RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolDatabaseError;
-
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabasePrimaryColors) {
- RWIProtocolDatabasePrimaryColorsRed,
- RWIProtocolDatabasePrimaryColorsGreen,
- RWIProtocolDatabasePrimaryColorsBlue,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor) {
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor) {
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorCyan,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorMagenta,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorYellow,
- RWIProtocolDatabaseExecuteAllOptionalParametersPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor) {
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor) {
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorCyan,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorMagenta,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorYellow,
- RWIProtocolDatabaseExecuteNoOptionalParametersPrintColorBlack,
-};
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseError : RWIProtocolJSONObject
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-/* required */ @property (nonatomic, copy) NSString *message;
-/* required */ @property (nonatomic, assign) int code;
-@end
-
-@protocol RWIProtocolDatabaseDomainHandler <NSObject>
-@required
-- (void)executeAllOptionalParametersWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ **columnNames, NSString **notes, double *timestamp, RWIProtocolJSONObject **values, RWIProtocolJSONObject **payload, int *databaseId, RWIProtocolDatabaseError **sqlError, RWIProtocolDatabasePrimaryColors *screenColor, NSArray/*<NSString>*/ **alternateColors, RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor *printColor))successCallback columnNames:(NSArray/*<NSString>*/ **)columnNames notes:(NSString **)notes timestamp:(double *)timestamp values:(RWIProtocolJSONObject **)values payload:(RWIProtocolJSONObject **)payload databaseId:(int *)databaseId sqlError:(RWIProtocolDatabaseError **)sqlError screenColor:(RWIProtocolDatabasePrimaryColors *)screenColor alternateColors:(NSArray/*<NSString>*/ **)alternateColors printColor:(RWIProtocolDatabaseExecuteAllOptionalParametersPrintColor *)printColor;
-- (void)executeNoOptionalParametersWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(NSArray/*<NSString>*/ *columnNames, NSString *notes, double timestamp, RWIProtocolJSONObject *values, RWIProtocolJSONObject *payload, int databaseId, RWIProtocolDatabaseError *sqlError, RWIProtocolDatabasePrimaryColors screenColor, NSArray/*<NSString>*/ *alternateColors, RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor printColor))successCallback columnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload databaseId:(int)databaseId sqlError:(RWIProtocolDatabaseError *)sqlError screenColor:(RWIProtocolDatabasePrimaryColors)screenColor alternateColors:(NSArray/*<NSString>*/ *)alternateColors printColor:(RWIProtocolDatabaseExecuteNoOptionalParametersPrintColor)printColor;
-@end
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolDatabaseError
-
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
-
- self.message = message;
- self.code = code;
-
- return self;
-}
-
-- (void)setMessage:(NSString *)message
-{
- [super setString:message forKey:@"message"];
-}
-
-- (NSString *)message
-{
- return [super stringForKey:@"message"];
-}
-
-- (void)setCode:(int)code
-{
- [super setInteger:code forKey:@"code"];
-}
-
-- (int)code
-{
- return [super integerForKey:@"code"];
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 commands-with-optional-call-return-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result
deleted file mode 100644
index 190b26002..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result
+++ /dev/null
@@ -1,1318 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-class AlternateNetwork1BackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateNetwork1BackendDispatcher() { }
- virtual void loadResource1(long callId) = 0;
-};
-class AlternateNetwork3BackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateNetwork3BackendDispatcher() { }
- virtual void loadResource1(long callId) = 0;
- virtual void loadResource2(long callId) = 0;
- virtual void loadResource3(long callId) = 0;
- virtual void loadResource4(long callId) = 0;
- virtual void loadResource5(long callId) = 0;
- virtual void loadResource6(long callId) = 0;
- virtual void loadResource7(long callId) = 0;
-};
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Network1.
-InspectorBackend.registerCommand("Network1.loadResource1", [], []);
-InspectorBackend.activateDomain("Network1");
-
-// Network3.
-InspectorBackend.registerCommand("Network3.loadResource1", [], []);
-InspectorBackend.registerCommand("Network3.loadResource2", [], []);
-InspectorBackend.registerCommand("Network3.loadResource3", [], []);
-InspectorBackend.registerCommand("Network3.loadResource4", [], []);
-InspectorBackend.registerCommand("Network3.loadResource5", [], []);
-InspectorBackend.registerCommand("Network3.loadResource6", [], []);
-InspectorBackend.registerCommand("Network3.loadResource7", [], []);
-InspectorBackend.activateDomain("Network3");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-class AlternateNetwork1BackendDispatcher;
-class AlternateNetwork3BackendDispatcher;
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-class Network1BackendDispatcherHandler {
-public:
- virtual void loadResource1(ErrorString&) = 0;
-protected:
- virtual ~Network1BackendDispatcherHandler();
-};
-
-class Network3BackendDispatcherHandler {
-public:
- virtual void loadResource1(ErrorString&) = 0;
- virtual void loadResource2(ErrorString&) = 0;
- virtual void loadResource3(ErrorString&) = 0;
- virtual void loadResource4(ErrorString&) = 0;
- virtual void loadResource5(ErrorString&) = 0;
- virtual void loadResource6(ErrorString&) = 0;
- virtual void loadResource7(ErrorString&) = 0;
-protected:
- virtual ~Network3BackendDispatcherHandler();
-};
-
-class Network1BackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<Network1BackendDispatcher> create(BackendDispatcher*, Network1BackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void loadResource1(long callId, const InspectorObject& message);
-private:
- Network1BackendDispatcher(BackendDispatcher&, Network1BackendDispatcherHandler*);
- Network1BackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateNetwork1BackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateNetwork1BackendDispatcher* m_alternateDispatcher;
-#endif
-};
-
-class Network3BackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<Network3BackendDispatcher> create(BackendDispatcher*, Network3BackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void loadResource1(long callId, const InspectorObject& message);
- void loadResource2(long callId, const InspectorObject& message);
- void loadResource3(long callId, const InspectorObject& message);
- void loadResource4(long callId, const InspectorObject& message);
- void loadResource5(long callId, const InspectorObject& message);
- void loadResource6(long callId, const InspectorObject& message);
- void loadResource7(long callId, const InspectorObject& message);
-private:
- Network3BackendDispatcher(BackendDispatcher&, Network3BackendDispatcherHandler*);
- Network3BackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateNetwork3BackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateNetwork3BackendDispatcher* m_alternateDispatcher;
-#endif
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-Network1BackendDispatcherHandler::~Network1BackendDispatcherHandler() { }
-Network3BackendDispatcherHandler::~Network3BackendDispatcherHandler() { }
-
-Ref<Network1BackendDispatcher> Network1BackendDispatcher::create(BackendDispatcher* backendDispatcher, Network1BackendDispatcherHandler* agent)
-{
- return adoptRef(*new Network1BackendDispatcher(*backendDispatcher, agent));
-}
-
-Network1BackendDispatcher::Network1BackendDispatcher(BackendDispatcher& backendDispatcher, Network1BackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Network1"), this);
-}
-
-void Network1BackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<Network1BackendDispatcher> protect(*this);
-
- if (method == "loadResource1")
- loadResource1(callId, message);
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "Network1", '.', method, "' was not found"));
-}
-
-void Network1BackendDispatcher::loadResource1(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource1(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource1(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-Ref<Network3BackendDispatcher> Network3BackendDispatcher::create(BackendDispatcher* backendDispatcher, Network3BackendDispatcherHandler* agent)
-{
- return adoptRef(*new Network3BackendDispatcher(*backendDispatcher, agent));
-}
-
-Network3BackendDispatcher::Network3BackendDispatcher(BackendDispatcher& backendDispatcher, Network3BackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Network3"), this);
-}
-
-void Network3BackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<Network3BackendDispatcher> protect(*this);
-
- typedef void (Network3BackendDispatcher::*CallHandler)(long callId, const InspectorObject& message);
- typedef HashMap<String, CallHandler> DispatchMap;
- DEPRECATED_DEFINE_STATIC_LOCAL(DispatchMap, dispatchMap, ());
- if (dispatchMap.isEmpty()) {
- static const struct MethodTable {
- const char* name;
- CallHandler handler;
- } commands[] = {
- { "loadResource1", &Network3BackendDispatcher::loadResource1 },
- { "loadResource2", &Network3BackendDispatcher::loadResource2 },
- { "loadResource3", &Network3BackendDispatcher::loadResource3 },
- { "loadResource4", &Network3BackendDispatcher::loadResource4 },
- { "loadResource5", &Network3BackendDispatcher::loadResource5 },
- { "loadResource6", &Network3BackendDispatcher::loadResource6 },
- { "loadResource7", &Network3BackendDispatcher::loadResource7 },
- };
- size_t length = WTF_ARRAY_LENGTH(commands);
- for (size_t i = 0; i < length; ++i)
- dispatchMap.add(commands[i].name, commands[i].handler);
- }
-
- HashMap<String, CallHandler>::iterator it = dispatchMap.find(method);
- if (it == dispatchMap.end()) {
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "Network3", '.', method, "' was not found"));
- return;
- }
-
- ((*this).*it->value)(callId, message.get());
-}
-
-void Network3BackendDispatcher::loadResource1(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource1(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource1(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource2(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource2(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource2(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource3(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource3(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource3(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource4(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource4(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource4(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource5(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource5(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource5(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource6(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource6(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource6(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-void Network3BackendDispatcher::loadResource7(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource7(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource7(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-
-
-// Typedefs.
-namespace Network2 {
-/* Unique loader identifier. */
-typedef String LoaderId;
-} // Network2
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#include <wtf/RetainPtr.h>
-
-@protocol RWIProtocolNetwork1DomainHandler;
-@protocol RWIProtocolNetwork3DomainHandler;
-
-namespace Inspector {
-
-
-class ObjCInspectorNetwork1BackendDispatcher final : public AlternateNetwork1BackendDispatcher {
-public:
- ObjCInspectorNetwork1BackendDispatcher(id<RWIProtocolNetwork1DomainHandler> handler) { m_delegate = handler; }
- virtual void loadResource1(long callId) override;
-private:
- RetainPtr<id<RWIProtocolNetwork1DomainHandler>> m_delegate;
-};
-
-
-
-class ObjCInspectorNetwork3BackendDispatcher final : public AlternateNetwork3BackendDispatcher {
-public:
- ObjCInspectorNetwork3BackendDispatcher(id<RWIProtocolNetwork3DomainHandler> handler) { m_delegate = handler; }
- virtual void loadResource1(long callId) override;
- virtual void loadResource2(long callId) override;
- virtual void loadResource3(long callId) override;
- virtual void loadResource4(long callId) override;
- virtual void loadResource5(long callId) override;
- virtual void loadResource6(long callId) override;
- virtual void loadResource7(long callId) override;
-private:
- RetainPtr<id<RWIProtocolNetwork3DomainHandler>> m_delegate;
-};
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- id<RWIProtocolNetwork1DomainHandler> _network1Handler;
- id<RWIProtocolNetwork3DomainHandler> _network3Handler;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_network1Handler release];
- [_network3Handler release];
- [super dealloc];
-}
-
-- (void)setNetwork1Handler:(id<RWIProtocolNetwork1DomainHandler>)handler
-{
- if (handler == _network1Handler)
- return;
-
- [_network1Handler release];
- _network1Handler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorNetwork1BackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<Network1BackendDispatcher, AlternateNetwork1BackendDispatcher>>(ASCIILiteral("Network1"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolNetwork1DomainHandler>)network1Handler
-{
- return _network1Handler;
-}
-
-- (void)setNetwork3Handler:(id<RWIProtocolNetwork3DomainHandler>)handler
-{
- if (handler == _network3Handler)
- return;
-
- [_network3Handler release];
- _network3Handler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorNetwork3BackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<Network3BackendDispatcher, AlternateNetwork3BackendDispatcher>>(ASCIILiteral("Network3"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolNetwork3DomainHandler>)network3Handler
-{
- return _network3Handler;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, retain, setter=setNetwork1Handler:) id<RWIProtocolNetwork1DomainHandler> network1Handler;
-@property (nonatomic, retain, setter=setNetwork3Handler:) id<RWIProtocolNetwork3DomainHandler> network3Handler;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-void ObjCInspectorNetwork1BackendDispatcher::loadResource1(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource1WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-
-
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource1(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource1WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource2(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource2WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource3(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource3WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource4(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource4WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource5(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource5WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource6(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource6WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-void ObjCInspectorNetwork3BackendDispatcher::loadResource7(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResource7WithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-
-
-
-
-
-
-@protocol RWIProtocolNetwork1DomainHandler <NSObject>
-@required
-- (void)loadResource1WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-@end
-
-@protocol RWIProtocolNetwork3DomainHandler <NSObject>
-@required
-- (void)loadResource1WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource2WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource3WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource4WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource5WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource6WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-- (void)loadResource7WithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-@end
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 domains-with-varying-command-sizes.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/enum-values.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/enum-values.json-result
deleted file mode 100644
index 9d74853c2..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/enum-values.json-result
+++ /dev/null
@@ -1,1172 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-class AlternateCommandDomainBackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateCommandDomainBackendDispatcher() { }
- virtual void commandWithEnumReturnValue(long callId) = 0;
-};
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// TypeDomain.
-InspectorBackend.registerEnum("TypeDomain.TypeDomainEnum", {Shared: "shared", Red: "red", Green: "green", Blue: "blue"});
-
-// CommandDomain.
-InspectorBackend.registerCommand("CommandDomain.commandWithEnumReturnValue", [], ["returnValue"]);
-InspectorBackend.activateDomain("CommandDomain");
-
-// EventDomain.
-InspectorBackend.registerEventDomainDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "EventDomain");
-InspectorBackend.registerEnum("EventDomain.EventWithEnumParameterParameter", {Shared: "shared", Black: "black", White: "white"});
-InspectorBackend.registerEvent("EventDomain.eventWithEnumParameter", ["parameter"]);
-InspectorBackend.activateDomain("EventDomain");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-class AlternateCommandDomainBackendDispatcher;
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-class CommandDomainBackendDispatcherHandler {
-public:
- // Named after parameter 'returnValue' while generating command/event commandWithEnumReturnValue.
- enum class ReturnValue {
- Shared = 0,
- Cyan = 6,
- Magenta = 7,
- Yellow = 8,
- }; // enum class ReturnValue
- virtual void commandWithEnumReturnValue(ErrorString&, CommandDomainBackendDispatcherHandler::ReturnValue* out_returnValue) = 0;
-protected:
- virtual ~CommandDomainBackendDispatcherHandler();
-};
-
-class CommandDomainBackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<CommandDomainBackendDispatcher> create(BackendDispatcher*, CommandDomainBackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void commandWithEnumReturnValue(long callId, const InspectorObject& message);
-private:
- CommandDomainBackendDispatcher(BackendDispatcher&, CommandDomainBackendDispatcherHandler*);
- CommandDomainBackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateCommandDomainBackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateCommandDomainBackendDispatcher* m_alternateDispatcher;
-#endif
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-CommandDomainBackendDispatcherHandler::~CommandDomainBackendDispatcherHandler() { }
-
-Ref<CommandDomainBackendDispatcher> CommandDomainBackendDispatcher::create(BackendDispatcher* backendDispatcher, CommandDomainBackendDispatcherHandler* agent)
-{
- return adoptRef(*new CommandDomainBackendDispatcher(*backendDispatcher, agent));
-}
-
-CommandDomainBackendDispatcher::CommandDomainBackendDispatcher(BackendDispatcher& backendDispatcher, CommandDomainBackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("CommandDomain"), this);
-}
-
-void CommandDomainBackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<CommandDomainBackendDispatcher> protect(*this);
-
- if (method == "commandWithEnumReturnValue")
- commandWithEnumReturnValue(callId, message);
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "CommandDomain", '.', method, "' was not found"));
-}
-
-void CommandDomainBackendDispatcher::commandWithEnumReturnValue(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->commandWithEnumReturnValue(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- CommandDomainBackendDispatcherHandler::ReturnValue out_returnValue;
- m_agent->commandWithEnumReturnValue(error, &out_returnValue);
-
- if (!error.length())
- result->setString(ASCIILiteral("returnValue"), Inspector::Protocol::getEnumConstantValue(out_returnValue));
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-class EventDomainFrontendDispatcher {
-public:
- EventDomainFrontendDispatcher(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChannel) { }
- // Named after parameter 'parameter' while generating command/event eventWithEnumParameter.
- enum class Parameter {
- Shared = 0,
- Black = 4,
- White = 5,
- }; // enum class Parameter
- void eventWithEnumParameter(Parameter parameter);
-private:
- FrontendChannel* m_frontendChannel;
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-void EventDomainFrontendDispatcher::eventWithEnumParameter(Parameter parameter)
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("EventDomain.eventWithEnumParameter"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- paramsObject->setString(ASCIILiteral("parameter"), Inspector::Protocol::getEnumConstantValue(parameter));
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
-
- m_frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace TypeDomain {
-enum class TypeDomainEnum;
-} // TypeDomain
-// End of forward declarations.
-
-
-
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace TypeDomain {
-/* */
-enum class TypeDomainEnum {
- Shared = 0,
- Red = 1,
- Green = 2,
- Blue = 3,
-}; // enum class TypeDomainEnum
-} // TypeDomain
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "shared",
- "red",
- "green",
- "blue",
- "black",
- "white",
- "cyan",
- "magenta",
- "yellow",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#include <wtf/RetainPtr.h>
-
-@protocol RWIProtocolCommandDomainDomainHandler;
-
-namespace Inspector {
-
-
-
-
-class ObjCInspectorCommandDomainBackendDispatcher final : public AlternateCommandDomainBackendDispatcher {
-public:
- ObjCInspectorCommandDomainBackendDispatcher(id<RWIProtocolCommandDomainDomainHandler> handler) { m_delegate = handler; }
- virtual void commandWithEnumReturnValue(long callId) override;
-private:
- RetainPtr<id<RWIProtocolCommandDomainDomainHandler>> m_delegate;
-};
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- id<RWIProtocolCommandDomainDomainHandler> _commandDomainHandler;
- RWIProtocolEventDomainDomainEventDispatcher *_eventDomainEventDispatcher;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_commandDomainHandler release];
- [_eventDomainEventDispatcher release];
- [super dealloc];
-}
-
-- (void)setCommandDomainHandler:(id<RWIProtocolCommandDomainDomainHandler>)handler
-{
- if (handler == _commandDomainHandler)
- return;
-
- [_commandDomainHandler release];
- _commandDomainHandler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorCommandDomainBackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<CommandDomainBackendDispatcher, AlternateCommandDomainBackendDispatcher>>(ASCIILiteral("CommandDomain"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolCommandDomainDomainHandler>)commandDomainHandler
-{
- return _commandDomainHandler;
-}
-
-- (RWIProtocolEventDomainDomainEventDispatcher *)eventDomainEventDispatcher
-{
- if (!_eventDomainEventDispatcher)
- _eventDomainEventDispatcher = [[RWIProtocolEventDomainDomainEventDispatcher alloc] initWithController:_controller];
- return _eventDomainEventDispatcher;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, retain, setter=setCommandDomainHandler:) id<RWIProtocolCommandDomainDomainHandler> commandDomainHandler;
-@property (nonatomic, readonly) RWIProtocolEventDomainDomainEventDispatcher *eventDomainEventDispatcher;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-void ObjCInspectorCommandDomainBackendDispatcher::commandWithEnumReturnValue(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue returnValue) {
- Ref<InspectorObject> resultObject = InspectorObject::create();
- resultObject->setString(ASCIILiteral("returnValue"), toProtocolString(returnValue));
- backendDispatcher()->sendResponse(callId, WTF::move(resultObject), String());
- };
-
- [m_delegate commandWithEnumReturnValueWithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolTypeDomainEnum value)
-{
- switch(value) {
- case RWIProtocolTypeDomainEnumShared:
- return ASCIILiteral("shared");
- case RWIProtocolTypeDomainEnumRed:
- return ASCIILiteral("red");
- case RWIProtocolTypeDomainEnumGreen:
- return ASCIILiteral("green");
- case RWIProtocolTypeDomainEnumBlue:
- return ASCIILiteral("blue");
- }
-}
-
-template<>
-inline RWIProtocolTypeDomainEnum fromProtocolString(const String& value)
-{
- if (value == "shared")
- return RWIProtocolTypeDomainEnumShared;
- if (value == "red")
- return RWIProtocolTypeDomainEnumRed;
- if (value == "green")
- return RWIProtocolTypeDomainEnumGreen;
- if (value == "blue")
- return RWIProtocolTypeDomainEnumBlue;
- ASSERT_NOT_REACHED();
- return RWIProtocolTypeDomainEnumShared;
-}
-
-
-inline String toProtocolString(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue value)
-{
- switch(value) {
- case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared:
- return ASCIILiteral("shared");
- case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan:
- return ASCIILiteral("cyan");
- case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta:
- return ASCIILiteral("magenta");
- case RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow:
- return ASCIILiteral("yellow");
- }
-}
-
-template<>
-inline RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue fromProtocolString(const String& value)
-{
- if (value == "shared")
- return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared;
- if (value == "cyan")
- return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan;
- if (value == "magenta")
- return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta;
- if (value == "yellow")
- return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow;
- ASSERT_NOT_REACHED();
- return RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared;
-}
-
-
-inline String toProtocolString(RWIProtocolEventDomainEventWithEnumParameterParameter value)
-{
- switch(value) {
- case RWIProtocolEventDomainEventWithEnumParameterParameterShared:
- return ASCIILiteral("shared");
- case RWIProtocolEventDomainEventWithEnumParameterParameterBlack:
- return ASCIILiteral("black");
- case RWIProtocolEventDomainEventWithEnumParameterParameterWhite:
- return ASCIILiteral("white");
- }
-}
-
-template<>
-inline RWIProtocolEventDomainEventWithEnumParameterParameter fromProtocolString(const String& value)
-{
- if (value == "shared")
- return RWIProtocolEventDomainEventWithEnumParameterParameterShared;
- if (value == "black")
- return RWIProtocolEventDomainEventWithEnumParameterParameterBlack;
- if (value == "white")
- return RWIProtocolEventDomainEventWithEnumParameterParameterWhite;
- ASSERT_NOT_REACHED();
- return RWIProtocolEventDomainEventWithEnumParameterParameterShared;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-@implementation RWIProtocolEventDomainDomainEventDispatcher
-{
- AugmentableInspectorController* _controller;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller;
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)eventWithEnumParameterWithParameter:(RWIProtocolEventDomainEventWithEnumParameterParameter)parameter
-{
- FrontendChannel* frontendChannel = _controller->frontendChannel();
- if (!frontendChannel)
- return;
-
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("EventDomain.eventWithEnumParameter"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- paramsObject->setString(ASCIILiteral("parameter"), toProtocolString(parameter));
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
- frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-@end
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.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, RWIProtocolTypeDomainEnum) {
- RWIProtocolTypeDomainEnumShared,
- RWIProtocolTypeDomainEnumRed,
- RWIProtocolTypeDomainEnumGreen,
- RWIProtocolTypeDomainEnumBlue,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue) {
- RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueShared,
- RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueCyan,
- RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueMagenta,
- RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValueYellow,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolEventDomainEventWithEnumParameterParameter) {
- RWIProtocolEventDomainEventWithEnumParameterParameterShared,
- RWIProtocolEventDomainEventWithEnumParameterParameterBlack,
- RWIProtocolEventDomainEventWithEnumParameterParameterWhite,
-};
-
-
-
-@protocol RWIProtocolCommandDomainDomainHandler <NSObject>
-@required
-- (void)commandWithEnumReturnValueWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)(RWIProtocolCommandDomainCommandWithEnumReturnValueReturnValue returnValue))successCallback;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolEventDomainDomainEventDispatcher : NSObject
-- (void)eventWithEnumParameterWithParameter:(RWIProtocolEventDomainEventWithEnumParameterParameter)parameter;
-@end
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 enum-values.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-@interface RWIProtocolEventDomainDomainEventDispatcher (Private)
-- (instancetype)initWithController:(Inspector::AugmentableInspectorController*)controller;
-@end
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/events-with-optional-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/events-with-optional-parameters.json-result
deleted file mode 100644
index 4b622d9de..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/events-with-optional-parameters.json-result
+++ /dev/null
@@ -1,1108 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Database.
-InspectorBackend.registerDatabaseDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Database");
-InspectorBackend.registerEvent("Database.didExecuteOptionalParameters", ["columnNames", "notes", "timestamp", "values", "payload", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.registerEvent("Database.didExecuteNoOptionalParameters", ["columnNames", "notes", "timestamp", "values", "payload", "sqlError", "screenColor", "alternateColors", "printColor"]);
-InspectorBackend.activateDomain("Database");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-class DatabaseFrontendDispatcher {
-public:
- DatabaseFrontendDispatcher(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChannel) { }
- void didExecuteOptionalParameters(RefPtr<Inspector::Protocol::Array<String>> columnNames, const String* const notes, const double* const timestamp, RefPtr<Inspector::InspectorObject> values, RefPtr<Inspector::InspectorValue> payload, RefPtr<Inspector::Protocol::Database::Error> sqlError, const Inspector::Protocol::Database::PrimaryColors* const screenColor, RefPtr<Inspector::Protocol::Database::ColorList> alternateColors, const String* const printColor);
- void didExecuteNoOptionalParameters(RefPtr<Inspector::Protocol::Array<String>> columnNames, const String& notes, double timestamp, RefPtr<Inspector::InspectorObject> values, RefPtr<Inspector::InspectorValue> payload, RefPtr<Inspector::Protocol::Database::Error> sqlError, const Inspector::Protocol::Database::PrimaryColors& screenColor, RefPtr<Inspector::Protocol::Database::ColorList> alternateColors, const String& printColor);
-private:
- FrontendChannel* m_frontendChannel;
-};
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-void DatabaseFrontendDispatcher::didExecuteOptionalParameters(RefPtr<Inspector::Protocol::Array<String>> columnNames, const String* const notes, const double* const timestamp, RefPtr<Inspector::InspectorObject> values, RefPtr<Inspector::InspectorValue> payload, RefPtr<Inspector::Protocol::Database::Error> sqlError, const Inspector::Protocol::Database::PrimaryColors* const screenColor, RefPtr<Inspector::Protocol::Database::ColorList> alternateColors, const String* const printColor)
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Database.didExecuteOptionalParameters"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- if (columnNames)
- paramsObject->setArray(ASCIILiteral("columnNames"), columnNames);
- if (notes)
- paramsObject->setString(ASCIILiteral("notes"), *notes);
- if (timestamp)
- paramsObject->setDouble(ASCIILiteral("timestamp"), *timestamp);
- if (values)
- paramsObject->setObject(ASCIILiteral("values"), values);
- if (payload)
- paramsObject->setValue(ASCIILiteral("payload"), *payload);
- if (sqlError)
- paramsObject->setObject(ASCIILiteral("sqlError"), sqlError);
- if (screenColor)
- paramsObject->setString(ASCIILiteral("screenColor"), *screenColor);
- if (alternateColors)
- paramsObject->setArray(ASCIILiteral("alternateColors"), alternateColors);
- if (printColor)
- paramsObject->setString(ASCIILiteral("printColor"), *printColor);
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
-
- m_frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-void DatabaseFrontendDispatcher::didExecuteNoOptionalParameters(RefPtr<Inspector::Protocol::Array<String>> columnNames, const String& notes, double timestamp, RefPtr<Inspector::InspectorObject> values, RefPtr<Inspector::InspectorValue> payload, RefPtr<Inspector::Protocol::Database::Error> sqlError, const Inspector::Protocol::Database::PrimaryColors& screenColor, RefPtr<Inspector::Protocol::Database::ColorList> alternateColors, const String& printColor)
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Database.didExecuteNoOptionalParameters"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- paramsObject->setArray(ASCIILiteral("columnNames"), columnNames);
- paramsObject->setString(ASCIILiteral("notes"), notes);
- paramsObject->setDouble(ASCIILiteral("timestamp"), timestamp);
- paramsObject->setObject(ASCIILiteral("values"), values);
- paramsObject->setValue(ASCIILiteral("payload"), payload);
- paramsObject->setObject(ASCIILiteral("sqlError"), sqlError);
- paramsObject->setString(ASCIILiteral("screenColor"), screenColor);
- paramsObject->setArray(ASCIILiteral("alternateColors"), alternateColors);
- paramsObject->setString(ASCIILiteral("printColor"), printColor);
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
-
- m_frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Database {
-class Error;
-} // Database
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Database {
-/* Unique identifier of Database object. */
-typedef String DatabaseId;
-typedef String PrimaryColors;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Database::PrimaryColors> ColorList;
-} // Database
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Database {
-/* Database error. */
-class Error : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- MessageSet = 1 << 0,
- CodeSet = 1 << 1,
- AllFieldsSet = (MessageSet | CodeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*Error*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class Error;
- public:
-
- Builder<STATE | MessageSet>& setMessage(const String& value)
- {
- COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
- m_result->setString(ASCIILiteral("message"), value);
- return castState<MessageSet>();
- }
-
- Builder<STATE | CodeSet>& setCode(int value)
- {
- COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
- m_result->setInteger(ASCIILiteral("code"), value);
- return castState<CodeSet>();
- }
-
- Ref<Error> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(Error) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<Error>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<Error> result = Error::create()
- * .setMessage(...)
- * .setCode(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Database
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- RWIProtocolDatabaseDomainEventDispatcher *_databaseEventDispatcher;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_databaseEventDispatcher release];
- [super dealloc];
-}
-
-- (RWIProtocolDatabaseDomainEventDispatcher *)databaseEventDispatcher
-{
- if (!_databaseEventDispatcher)
- _databaseEventDispatcher = [[RWIProtocolDatabaseDomainEventDispatcher alloc] initWithController:_controller];
- return _databaseEventDispatcher;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, readonly) RWIProtocolDatabaseDomainEventDispatcher *databaseEventDispatcher;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolDatabaseDomainEventDispatcher
-{
- AugmentableInspectorController* _controller;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller;
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)didExecuteOptionalParametersWithColumnNames:(NSArray/*<NSString>*/ **)columnNames notes:(NSString **)notes timestamp:(double *)timestamp values:(RWIProtocolJSONObject **)values payload:(RWIProtocolJSONObject **)payload sqlError:(RWIProtocolDatabaseError **)sqlError screenColor:(NSString **)screenColor alternateColors:(NSArray/*<NSString>*/ **)alternateColors printColor:(NSString **)printColor
-{
- FrontendChannel* frontendChannel = _controller->frontendChannel();
- if (!frontendChannel)
- return;
-
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(screenColor, @"screenColor");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(alternateColors, @"alternateColors");
- THROW_EXCEPTION_FOR_BAD_OPTIONAL_PARAMETER(printColor, @"printColor");
-
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Database.didExecuteOptionalParameters"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- if (columnNames)
- paramsObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray((*columnNames)));
- if (notes)
- paramsObject->setString(ASCIILiteral("notes"), (*notes));
- if (timestamp)
- paramsObject->setDouble(ASCIILiteral("timestamp"), (*timestamp));
- if (values)
- paramsObject->setObject(ASCIILiteral("values"), [(*values) toInspectorObject]);
- if (payload)
- paramsObject->setValue(ASCIILiteral("payload"), [(*payload) toInspectorObject]);
- if (sqlError)
- paramsObject->setObject(ASCIILiteral("sqlError"), [(*sqlError) toInspectorObject]);
- if (screenColor)
- paramsObject->setString(ASCIILiteral("screenColor"), (*screenColor));
- if (alternateColors)
- paramsObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray((*alternateColors)));
- if (printColor)
- paramsObject->setString(ASCIILiteral("printColor"), (*printColor));
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
- frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-- (void)didExecuteNoOptionalParametersWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload sqlError:(RWIProtocolDatabaseError *)sqlError screenColor:(NSString *)screenColor alternateColors:(NSArray/*<NSString>*/ *)alternateColors printColor:(NSString *)printColor
-{
- FrontendChannel* frontendChannel = _controller->frontendChannel();
- if (!frontendChannel)
- return;
-
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(sqlError, @"sqlError");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(screenColor, @"screenColor");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(alternateColors, @"alternateColors");
- THROW_EXCEPTION_FOR_REQUIRED_PARAMETER(printColor, @"printColor");
-
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Database.didExecuteNoOptionalParameters"));
- Ref<InspectorObject> paramsObject = InspectorObject::create();
- paramsObject->setArray(ASCIILiteral("columnNames"), inspectorStringArray(columnNames));
- paramsObject->setString(ASCIILiteral("notes"), notes);
- paramsObject->setDouble(ASCIILiteral("timestamp"), timestamp);
- paramsObject->setObject(ASCIILiteral("values"), [values toInspectorObject]);
- paramsObject->setValue(ASCIILiteral("payload"), [payload toInspectorObject]);
- paramsObject->setObject(ASCIILiteral("sqlError"), [sqlError toInspectorObject]);
- paramsObject->setString(ASCIILiteral("screenColor"), screenColor);
- paramsObject->setArray(ASCIILiteral("alternateColors"), inspectorStringArray(alternateColors));
- paramsObject->setString(ASCIILiteral("printColor"), printColor);
- jsonMessage->setObject(ASCIILiteral("params"), WTF::move(paramsObject));
- frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-@end
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolDatabaseError;
-
-
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseError : RWIProtocolJSONObject
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-/* required */ @property (nonatomic, copy) NSString *message;
-/* required */ @property (nonatomic, assign) int code;
-@end
-
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseDomainEventDispatcher : NSObject
-- (void)didExecuteOptionalParametersWithColumnNames:(NSArray/*<NSString>*/ **)columnNames notes:(NSString **)notes timestamp:(double *)timestamp values:(RWIProtocolJSONObject **)values payload:(RWIProtocolJSONObject **)payload sqlError:(RWIProtocolDatabaseError **)sqlError screenColor:(NSString **)screenColor alternateColors:(NSArray/*<NSString>*/ **)alternateColors printColor:(NSString **)printColor;
-- (void)didExecuteNoOptionalParametersWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload sqlError:(RWIProtocolDatabaseError *)sqlError screenColor:(NSString *)screenColor alternateColors:(NSArray/*<NSString>*/ *)alternateColors printColor:(NSString *)printColor;
-@end
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolDatabaseError
-
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
-
- self.message = message;
- self.code = code;
-
- return self;
-}
-
-- (void)setMessage:(NSString *)message
-{
- [super setString:message forKey:@"message"];
-}
-
-- (NSString *)message
-{
- return [super stringForKey:@"message"];
-}
-
-- (void)setCode:(int)code
-{
- [super setInteger:code forKey:@"code"];
-}
-
-- (int)code
-{
- return [super integerForKey:@"code"];
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 events-with-optional-parameters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-@interface RWIProtocolDatabaseDomainEventDispatcher (Private)
-- (instancetype)initWithController:(Inspector::AugmentableInspectorController*)controller;
-@end
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-domain-availability.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-domain-availability.json-error
deleted file mode 100644
index 90d7195d6..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-domain-availability.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Malformed domain specification: availability is an unsupported string. Was: "webb", Allowed values: web
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-call-parameter-names.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-call-parameter-names.json-error
deleted file mode 100644
index 3f756de32..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-call-parameter-names.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Malformed domain specification: call parameter list for command processPoints has duplicate parameter names
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-return-parameter-names.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-return-parameter-names.json-error
deleted file mode 100644
index ea148ff67..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-command-return-parameter-names.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Malformed domain specification: return parameter list for command processPoints has duplicate parameter names
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-event-parameter-names.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-event-parameter-names.json-error
deleted file mode 100644
index c71bbd21c..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-event-parameter-names.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Malformed domain specification: parameter list for event processedPoints has duplicate parameter names
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-declarations.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-declarations.json-error
deleted file mode 100644
index 447cdf8e2..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-declarations.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Duplicate type declaration: Runtime.RemoteObjectId
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-member-names.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-member-names.json-error
deleted file mode 100644
index d5376a77a..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-duplicate-type-member-names.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Malformed domain specification: type declaration for Point has duplicate member names
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-enum-with-no-values.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-enum-with-no-values.json-error
deleted file mode 100644
index 2655c2b90..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-enum-with-no-values.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Type reference with enum values must have at least one enum value.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-parameter-flag.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-parameter-flag.json-error
deleted file mode 100644
index 97b2af0e4..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-parameter-flag.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: The 'optional' flag for a parameter must be a boolean literal.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-type-member.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-type-member.json-error
deleted file mode 100644
index 86df3750c..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-string-typed-optional-type-member.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: The 'optional' flag for a type member must be a boolean literal.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-declaration-using-type-reference.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-declaration-using-type-reference.json-error
deleted file mode 100644
index 42f5753a4..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-declaration-using-type-reference.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Type reference cannot have both 'type' and '$ref' keys.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-with-lowercase-name.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-with-lowercase-name.json-error
deleted file mode 100644
index 4e462250c..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-type-with-lowercase-name.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Types must begin with an uppercase character.
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-declaration.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-declaration.json-error
deleted file mode 100644
index d3c782d89..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-declaration.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Lookup failed for type reference: dragon (referenced from domain: Runtime)
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-member.json-error b/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-member.json-error
deleted file mode 100644
index faf6672cb..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-member.json-error
+++ /dev/null
@@ -1 +0,0 @@
-ERROR: Lookup failed for type reference: Color (referenced from domain: Fantasy)
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result
deleted file mode 100644
index bb8d29d84..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result
+++ /dev/null
@@ -1,1159 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-#if PLATFORM(WEB_COMMANDS)
-class AlternateNetwork1BackendDispatcher : public AlternateBackendDispatcher {
-public:
- virtual ~AlternateNetwork1BackendDispatcher() { }
- virtual void loadResource(long callId) = 0;
-};
-#endif // PLATFORM(WEB_COMMANDS)
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Network1.
-InspectorBackend.registerCommand("Network1.loadResource", [], []);
-InspectorBackend.activateDomain("Network1");
-
-// Network3.
-InspectorBackend.registerNetwork3Dispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Network3");
-InspectorBackend.registerEvent("Network3.resourceLoaded", []);
-InspectorBackend.activateDomain("Network3");
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#if PLATFORM(WEB_COMMANDS)
-class AlternateNetwork1BackendDispatcher;
-#endif // PLATFORM(WEB_COMMANDS)
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#if PLATFORM(WEB_COMMANDS)
-class Network1BackendDispatcherHandler {
-public:
- virtual void loadResource(ErrorString&) = 0;
-protected:
- virtual ~Network1BackendDispatcherHandler();
-};
-#endif // PLATFORM(WEB_COMMANDS)
-
-#if PLATFORM(WEB_COMMANDS)
-class Network1BackendDispatcher final : public SupplementalBackendDispatcher {
-public:
- static Ref<Network1BackendDispatcher> create(BackendDispatcher*, Network1BackendDispatcherHandler*);
- virtual void dispatch(long callId, const String& method, Ref<InspectorObject>&& message) override;
-private:
- void loadResource(long callId, const InspectorObject& message);
-private:
- Network1BackendDispatcher(BackendDispatcher&, Network1BackendDispatcherHandler*);
- Network1BackendDispatcherHandler* m_agent;
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-public:
- void setAlternateDispatcher(AlternateNetwork1BackendDispatcher* alternateDispatcher) { m_alternateDispatcher = alternateDispatcher; }
-private:
- AlternateNetwork1BackendDispatcher* m_alternateDispatcher;
-#endif
-};
-#endif // PLATFORM(WEB_COMMANDS)
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-#if PLATFORM(WEB_COMMANDS)
-Network1BackendDispatcherHandler::~Network1BackendDispatcherHandler() { }
-#endif // PLATFORM(WEB_COMMANDS)
-
-#if PLATFORM(WEB_COMMANDS)
-Ref<Network1BackendDispatcher> Network1BackendDispatcher::create(BackendDispatcher* backendDispatcher, Network1BackendDispatcherHandler* agent)
-{
- return adoptRef(*new Network1BackendDispatcher(*backendDispatcher, agent));
-}
-
-Network1BackendDispatcher::Network1BackendDispatcher(BackendDispatcher& backendDispatcher, Network1BackendDispatcherHandler* agent)
- : SupplementalBackendDispatcher(backendDispatcher)
- , m_agent(agent)
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- , m_alternateDispatcher(nullptr)
-#endif
-{
- m_backendDispatcher->registerDispatcherForDomain(ASCIILiteral("Network1"), this);
-}
-
-void Network1BackendDispatcher::dispatch(long callId, const String& method, Ref<InspectorObject>&& message)
-{
- Ref<Network1BackendDispatcher> protect(*this);
-
- if (method == "loadResource")
- loadResource(callId, message);
- else
- m_backendDispatcher->reportProtocolError(&callId, BackendDispatcher::MethodNotFound, makeString('\'', "Network1", '.', method, "' was not found"));
-}
-
-void Network1BackendDispatcher::loadResource(long callId, const InspectorObject&)
-{
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
- if (m_alternateDispatcher) {
- m_alternateDispatcher->loadResource(callId);
- return;
- }
-#endif
-
- ErrorString error;
- Ref<InspectorObject> result = InspectorObject::create();
- m_agent->loadResource(error);
-
- m_backendDispatcher->sendResponse(callId, WTF::move(result), error);
-}
-#endif // PLATFORM(WEB_COMMANDS)
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-#if PLATFORM(WEB_EVENTS)
-class Network3FrontendDispatcher {
-public:
- Network3FrontendDispatcher(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChannel) { }
- void resourceLoaded();
-private:
- FrontendChannel* m_frontendChannel;
-};
-#endif // PLATFORM(WEB_EVENTS)
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-#if PLATFORM(WEB_EVENTS)
-void Network3FrontendDispatcher::resourceLoaded()
-{
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Network3.resourceLoaded"));
-
- m_frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-#endif // PLATFORM(WEB_EVENTS)
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-#if PLATFORM(WEB_TYPES)
-namespace Network2 {
-class NetworkError;
-} // Network2
-#endif // PLATFORM(WEB_TYPES)
-// End of forward declarations.
-
-
-
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-#if PLATFORM(WEB_TYPES)
-namespace Network2 {
-class NetworkError : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- MessageSet = 1 << 0,
- CodeSet = 1 << 1,
- AllFieldsSet = (MessageSet | CodeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*NetworkError*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class NetworkError;
- public:
-
- Builder<STATE | MessageSet>& setMessage(const String& value)
- {
- COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
- m_result->setString(ASCIILiteral("message"), value);
- return castState<MessageSet>();
- }
-
- Builder<STATE | CodeSet>& setCode(int value)
- {
- COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
- m_result->setInteger(ASCIILiteral("code"), value);
- return castState<CodeSet>();
- }
-
- Ref<NetworkError> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(NetworkError) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<NetworkError>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<NetworkError> result = NetworkError::create()
- * .setMessage(...)
- * .setCode(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Network2
-#endif // PLATFORM(WEB_TYPES)
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#include <wtf/RetainPtr.h>
-
-@protocol RWIProtocolNetwork1DomainHandler;
-
-namespace Inspector {
-
-
-#if PLATFORM(WEB_COMMANDS)
-class ObjCInspectorNetwork1BackendDispatcher final : public AlternateNetwork1BackendDispatcher {
-public:
- ObjCInspectorNetwork1BackendDispatcher(id<RWIProtocolNetwork1DomainHandler> handler) { m_delegate = handler; }
- virtual void loadResource(long callId) override;
-private:
- RetainPtr<id<RWIProtocolNetwork1DomainHandler>> m_delegate;
-};
-#endif // PLATFORM(WEB_COMMANDS)
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- AugmentableInspectorController* _controller;
- id<RWIProtocolNetwork1DomainHandler> _network1Handler;
- RWIProtocolNetwork3DomainEventDispatcher *_network3EventDispatcher;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)dealloc
-{
- [_network1Handler release];
- [_network3EventDispatcher release];
- [super dealloc];
-}
-
-- (void)setNetwork1Handler:(id<RWIProtocolNetwork1DomainHandler>)handler
-{
- if (handler == _network1Handler)
- return;
-
- [_network1Handler release];
- _network1Handler = [handler retain];
-
- auto alternateDispatcher = std::make_unique<ObjCInspectorNetwork1BackendDispatcher>(handler);
- auto alternateAgent = std::make_unique<AlternateDispatchableAgent<Network1BackendDispatcher, AlternateNetwork1BackendDispatcher>>(ASCIILiteral("Network1"), WTF::move(alternateDispatcher));
- _controller->appendExtraAgent(WTF::move(alternateAgent));
-}
-
-- (id<RWIProtocolNetwork1DomainHandler>)network1Handler
-{
- return _network1Handler;
-}
-
-- (RWIProtocolNetwork3DomainEventDispatcher *)network3EventDispatcher
-{
- if (!_network3EventDispatcher)
- _network3EventDispatcher = [[RWIProtocolNetwork3DomainEventDispatcher alloc] initWithController:_controller];
- return _network3EventDispatcher;
-}
-
-@end
-
-
-### End File: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@property (nonatomic, retain, setter=setNetwork1Handler:) id<RWIProtocolNetwork1DomainHandler> network1Handler;
-@property (nonatomic, readonly) RWIProtocolNetwork3DomainEventDispatcher *network3EventDispatcher;
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-#if PLATFORM(WEB_COMMANDS)
-void ObjCInspectorNetwork1BackendDispatcher::loadResource(long callId)
-{
- id errorCallback = ^(NSString *error) {
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), error);
- };
-
- id successCallback = ^{
- backendDispatcher()->sendResponse(callId, InspectorObject::create(), String());
- };
-
- [m_delegate loadResourceWithErrorCallback:errorCallback successCallback:successCallback];
-}
-
-#endif // PLATFORM(WEB_COMMANDS)
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-@implementation RWIProtocolNetwork3DomainEventDispatcher
-{
- AugmentableInspectorController* _controller;
-}
-
-- (instancetype)initWithController:(AugmentableInspectorController*)controller;
-{
- self = [super init];
- if (!self)
- return nil;
- ASSERT(controller);
- _controller = controller;
- return self;
-}
-
-- (void)resourceLoaded
-{
- FrontendChannel* frontendChannel = _controller->frontendChannel();
- if (!frontendChannel)
- return;
-
- Ref<InspectorObject> jsonMessage = InspectorObject::create();
- jsonMessage->setString(ASCIILiteral("method"), ASCIILiteral("Network3.resourceLoaded"));
- frontendChannel->sendMessageToFrontend(jsonMessage->toJSONString());
-}
-
-@end
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolNetwork2NetworkError;
-
-
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolNetwork2NetworkError : RWIProtocolJSONObject
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-/* required */ @property (nonatomic, copy) NSString *message;
-/* required */ @property (nonatomic, assign) int code;
-@end
-
-@protocol RWIProtocolNetwork1DomainHandler <NSObject>
-@required
-- (void)loadResourceWithErrorCallback:(void(^)(NSString *error))errorCallback successCallback:(void(^)())successCallback;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolNetwork3DomainEventDispatcher : NSObject
-- (void)resourceLoaded;
-@end
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-@implementation RWIProtocolNetwork2NetworkError
-
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
-
- self.message = message;
- self.code = code;
-
- return self;
-}
-
-- (void)setMessage:(NSString *)message
-{
- [super setString:message forKey:@"message"];
-}
-
-- (NSString *)message
-{
- return [super stringForKey:@"message"];
-}
-
-- (void)setCode:(int)code
-{
- [super setInteger:code forKey:@"code"];
-}
-
-- (int)code
-{
- return [super integerForKey:@"code"];
-}
-
-@end
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 generate-domains-with-feature-guards.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-@interface RWIProtocolNetwork3DomainEventDispatcher (Private)
-- (instancetype)initWithController:(Inspector::AugmentableInspectorController*)controller;
-@end
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/same-type-id-different-domain.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/same-type-id-different-domain.json-result
deleted file mode 100644
index c272f72b6..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/same-type-id-different-domain.json-result
+++ /dev/null
@@ -1,841 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-
-
-// Typedefs.
-namespace Runtime {
-/* Unique object identifier. */
-typedef String RemoteObjectId;
-} // Runtime
-
-namespace Runtime2 {
-/* Unique object identifier. */
-typedef String RemoteObjectId;
-} // Runtime2
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-
-
-
-
-
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 same-type-id-different-domain.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result
deleted file mode 100644
index a8186e0b0..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result
+++ /dev/null
@@ -1,984 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Runtime {
-class KeyPath;
-} // Runtime
-// End of forward declarations.
-
-
-
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Runtime {
-/* Key path. */
-class KeyPath : public Inspector::InspectorObjectBase {
-public:
- // Named after property name 'type' while generating KeyPath.
- enum class Type {
- Null = 0,
- String = 1,
- Array = 2,
- }; // enum class Type
- enum {
- NoFieldsSet = 0,
- TypeSet = 1 << 0,
- AllFieldsSet = (TypeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*KeyPath*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class KeyPath;
- public:
-
- Builder<STATE | TypeSet>& setType(Type value)
- {
- COMPILE_ASSERT(!(STATE & TypeSet), property_type_already_set);
- m_result->setString(ASCIILiteral("type"), Inspector::Protocol::getEnumConstantValue(static_cast<int>(value)));
- return castState<TypeSet>();
- }
-
- Ref<KeyPath> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(KeyPath) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<KeyPath>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<KeyPath> result = KeyPath::create()
- * .setType(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-
- void setString(const String& value)
- {
- InspectorObjectBase::setString(ASCIILiteral("string"), value);
- }
-
- void setArray(RefPtr<Inspector::Protocol::Array<String>> value)
- {
- InspectorObjectBase::setArray(ASCIILiteral("array"), WTF::move(value));
- }
-};
-
-} // Runtime
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "null",
- "string",
- "array",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolRuntimeKeyPathType value)
-{
- switch(value) {
- case RWIProtocolRuntimeKeyPathTypeNull:
- return ASCIILiteral("null");
- case RWIProtocolRuntimeKeyPathTypeString:
- return ASCIILiteral("string");
- case RWIProtocolRuntimeKeyPathTypeArray:
- return ASCIILiteral("array");
- }
-}
-
-template<>
-inline RWIProtocolRuntimeKeyPathType fromProtocolString(const String& value)
-{
- if (value == "null")
- return RWIProtocolRuntimeKeyPathTypeNull;
- if (value == "string")
- return RWIProtocolRuntimeKeyPathTypeString;
- if (value == "array")
- return RWIProtocolRuntimeKeyPathTypeArray;
- ASSERT_NOT_REACHED();
- return RWIProtocolRuntimeKeyPathTypeNull;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolRuntimeKeyPath;
-
-
-typedef NS_ENUM(NSInteger, RWIProtocolRuntimeKeyPathType) {
- RWIProtocolRuntimeKeyPathTypeNull,
- RWIProtocolRuntimeKeyPathTypeString,
- RWIProtocolRuntimeKeyPathTypeArray,
-};
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolRuntimeKeyPath : RWIProtocolJSONObject
-- (instancetype)initWithType:(RWIProtocolRuntimeKeyPathType)type;
-/* required */ @property (nonatomic, assign) RWIProtocolRuntimeKeyPathType type;
-/* optional */ @property (nonatomic, copy) NSString *string;
-/* optional */ @property (nonatomic, copy) NSArray/*<NSString>*/ *array;
-@end
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolRuntimeKeyPath
-
-- (instancetype)initWithType:(RWIProtocolRuntimeKeyPathType)type;
-{
- self = [super init];
- if (!self)
- return nil;
-
- self.type = type;
-
- return self;
-}
-
-- (void)setType:(RWIProtocolRuntimeKeyPathType)type
-{
- [super setString:toProtocolString(type) forKey:@"type"];
-}
-
-- (RWIProtocolRuntimeKeyPathType)type
-{
- return fromProtocolString<RWIProtocolRuntimeKeyPathType>([super stringForKey:@"type"]);
-}
-
-- (void)setString:(NSString *)string
-{
- [super setString:string forKey:@"string"];
-}
-
-- (NSString *)string
-{
- return [super stringForKey:@"string"];
-}
-
-- (void)setArray:(NSArray/*<NSString>*/ *)array
-{
- [super setInspectorArray:inspectorStringArray(array) forKey:@"array"];
-}
-
-- (NSArray/*<NSString>*/ *)array
-{
- return objcStringArray([super inspectorArrayForKey:@"array"]);
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 shadowed-optional-type-setters.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result
deleted file mode 100644
index 53b3f2216..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result
+++ /dev/null
@@ -1,826 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-
-
-// Typedefs.
-namespace Runtime {
-/* Unique object identifier. */
-typedef int RemoteObjectId;
-} // Runtime
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-
-
-
-
-
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-aliased-primitive-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-array-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-array-type.json-result
deleted file mode 100644
index 7e9ef1e8a..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-array-type.json-result
+++ /dev/null
@@ -1,893 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Debugger.
-InspectorBackend.registerEnum("Debugger.Reason", {Died: "Died", Fainted: "Fainted", Hungry: "Hungry"});
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Debugger {
-enum class Reason;
-} // Debugger
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Debugger {
-typedef int BreakpointId;
-} // Debugger
-
-namespace Runtime {
-typedef int ObjectId;
-typedef Inspector::Protocol::Array<int> LuckyNumbers;
-typedef Inspector::Protocol::Array<String> BabyNames;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Runtime::ObjectId> NewObjects;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Debugger::BreakpointId> OldObjects;
-typedef Inspector::Protocol::Array<Inspector::Protocol::Debugger::Reason> StopReasons;
-} // Runtime
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Debugger {
-/* */
-enum class Reason {
- Died = 0,
- Fainted = 1,
- Hungry = 2,
-}; // enum class Reason
-} // Debugger
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "Died",
- "Fainted",
- "Hungry",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolDebuggerReason value)
-{
- switch(value) {
- case RWIProtocolDebuggerReasonDied:
- return ASCIILiteral("Died");
- case RWIProtocolDebuggerReasonFainted:
- return ASCIILiteral("Fainted");
- case RWIProtocolDebuggerReasonHungry:
- return ASCIILiteral("Hungry");
- }
-}
-
-template<>
-inline RWIProtocolDebuggerReason fromProtocolString(const String& value)
-{
- if (value == "Died")
- return RWIProtocolDebuggerReasonDied;
- if (value == "Fainted")
- return RWIProtocolDebuggerReasonFainted;
- if (value == "Hungry")
- return RWIProtocolDebuggerReasonHungry;
- ASSERT_NOT_REACHED();
- return RWIProtocolDebuggerReasonDied;
-}
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.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, RWIProtocolDebuggerReason) {
- RWIProtocolDebuggerReasonDied,
- RWIProtocolDebuggerReasonFainted,
- RWIProtocolDebuggerReasonHungry,
-};
-
-
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-array-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-enum-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-enum-type.json-result
deleted file mode 100644
index 6d63dd5ae..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-enum-type.json-result
+++ /dev/null
@@ -1,925 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Runtime.
-InspectorBackend.registerEnum("Runtime.FarmAnimals", {Pigs: "Pigs", Cows: "Cows", Cats: "Cats", Hens: "Hens"});
-InspectorBackend.registerEnum("Runtime.TwoLeggedAnimals", {Ducks: "Ducks", Hens: "Hens", Crows: "Crows", Flamingos: "Flamingos"});
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Runtime {
-enum class FarmAnimals;
-enum class TwoLeggedAnimals;
-} // Runtime
-// End of forward declarations.
-
-
-
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Runtime {
-/* */
-enum class FarmAnimals {
- Pigs = 0,
- Cows = 1,
- Cats = 2,
- Hens = 3,
-}; // enum class FarmAnimals
-/* */
-enum class TwoLeggedAnimals {
- Ducks = 4,
- Hens = 3,
- Crows = 5,
- Flamingos = 6,
-}; // enum class TwoLeggedAnimals
-} // Runtime
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "Pigs",
- "Cows",
- "Cats",
- "Hens",
- "Ducks",
- "Crows",
- "Flamingos",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolRuntimeFarmAnimals value)
-{
- switch(value) {
- case RWIProtocolRuntimeFarmAnimalsPigs:
- return ASCIILiteral("Pigs");
- case RWIProtocolRuntimeFarmAnimalsCows:
- return ASCIILiteral("Cows");
- case RWIProtocolRuntimeFarmAnimalsCats:
- return ASCIILiteral("Cats");
- case RWIProtocolRuntimeFarmAnimalsHens:
- return ASCIILiteral("Hens");
- }
-}
-
-template<>
-inline RWIProtocolRuntimeFarmAnimals fromProtocolString(const String& value)
-{
- if (value == "Pigs")
- return RWIProtocolRuntimeFarmAnimalsPigs;
- if (value == "Cows")
- return RWIProtocolRuntimeFarmAnimalsCows;
- if (value == "Cats")
- return RWIProtocolRuntimeFarmAnimalsCats;
- if (value == "Hens")
- return RWIProtocolRuntimeFarmAnimalsHens;
- ASSERT_NOT_REACHED();
- return RWIProtocolRuntimeFarmAnimalsPigs;
-}
-
-inline String toProtocolString(RWIProtocolRuntimeTwoLeggedAnimals value)
-{
- switch(value) {
- case RWIProtocolRuntimeTwoLeggedAnimalsDucks:
- return ASCIILiteral("Ducks");
- case RWIProtocolRuntimeTwoLeggedAnimalsHens:
- return ASCIILiteral("Hens");
- case RWIProtocolRuntimeTwoLeggedAnimalsCrows:
- return ASCIILiteral("Crows");
- case RWIProtocolRuntimeTwoLeggedAnimalsFlamingos:
- return ASCIILiteral("Flamingos");
- }
-}
-
-template<>
-inline RWIProtocolRuntimeTwoLeggedAnimals fromProtocolString(const String& value)
-{
- if (value == "Ducks")
- return RWIProtocolRuntimeTwoLeggedAnimalsDucks;
- if (value == "Hens")
- return RWIProtocolRuntimeTwoLeggedAnimalsHens;
- if (value == "Crows")
- return RWIProtocolRuntimeTwoLeggedAnimalsCrows;
- if (value == "Flamingos")
- return RWIProtocolRuntimeTwoLeggedAnimalsFlamingos;
- ASSERT_NOT_REACHED();
- return RWIProtocolRuntimeTwoLeggedAnimalsDucks;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.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, RWIProtocolRuntimeFarmAnimals) {
- RWIProtocolRuntimeFarmAnimalsPigs,
- RWIProtocolRuntimeFarmAnimalsCows,
- RWIProtocolRuntimeFarmAnimalsCats,
- RWIProtocolRuntimeFarmAnimalsHens,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolRuntimeTwoLeggedAnimals) {
- RWIProtocolRuntimeTwoLeggedAnimalsDucks,
- RWIProtocolRuntimeTwoLeggedAnimalsHens,
- RWIProtocolRuntimeTwoLeggedAnimalsCrows,
- RWIProtocolRuntimeTwoLeggedAnimalsFlamingos,
-};
-
-
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-enum-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-object-type.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-object-type.json-result
deleted file mode 100644
index 6e94941bc..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-declaration-object-type.json-result
+++ /dev/null
@@ -1,1736 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Database {
-class DummyObject;
-class Error;
-class ObjectWithPropertyNameConflicts;
-class OptionalParameterBundle;
-class ParameterBundle;
-} // Database
-
-namespace Test {
-class ParameterBundle;
-} // Test
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Database {
-typedef Inspector::Protocol::Array<Inspector::Protocol::Database::Error> ErrorList;
-} // Database
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Database {
-/* Database error. */
-class Error : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- MessageSet = 1 << 0,
- CodeSet = 1 << 1,
- AllFieldsSet = (MessageSet | CodeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*Error*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class Error;
- public:
-
- Builder<STATE | MessageSet>& setMessage(const String& value)
- {
- COMPILE_ASSERT(!(STATE & MessageSet), property_message_already_set);
- m_result->setString(ASCIILiteral("message"), value);
- return castState<MessageSet>();
- }
-
- Builder<STATE | CodeSet>& setCode(int value)
- {
- COMPILE_ASSERT(!(STATE & CodeSet), property_code_already_set);
- m_result->setInteger(ASCIILiteral("code"), value);
- return castState<CodeSet>();
- }
-
- Ref<Error> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(Error) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<Error>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<Error> result = Error::create()
- * .setMessage(...)
- * .setCode(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-class OptionalParameterBundle : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- AllFieldsSet = 0
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*OptionalParameterBundle*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class OptionalParameterBundle;
- public:
-
- Ref<OptionalParameterBundle> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(OptionalParameterBundle) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<OptionalParameterBundle>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<OptionalParameterBundle> result = OptionalParameterBundle::create()
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-
- void setColumnNames(RefPtr<Inspector::Protocol::Array<String>> value)
- {
- InspectorObjectBase::setArray(ASCIILiteral("columnNames"), WTF::move(value));
- }
-
- void setNotes(const String& value)
- {
- InspectorObjectBase::setString(ASCIILiteral("notes"), value);
- }
-
- void setTimestamp(double value)
- {
- InspectorObjectBase::setDouble(ASCIILiteral("timestamp"), value);
- }
-
- void setValues(RefPtr<Inspector::InspectorObject> value)
- {
- InspectorObjectBase::setObject(ASCIILiteral("values"), WTF::move(value));
- }
-
- void setPayload(RefPtr<Inspector::InspectorValue> value)
- {
- InspectorObjectBase::setValue(ASCIILiteral("payload"), WTF::move(value));
- }
-
- void setError(RefPtr<Inspector::Protocol::Database::Error> value)
- {
- InspectorObjectBase::setObject(ASCIILiteral("error"), WTF::move(value));
- }
-
- void setErrorList(RefPtr<Inspector::Protocol::Database::ErrorList> value)
- {
- InspectorObjectBase::setArray(ASCIILiteral("errorList"), WTF::move(value));
- }
-};
-
-class ParameterBundle : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- ColumnNamesSet = 1 << 0,
- NotesSet = 1 << 1,
- TimestampSet = 1 << 2,
- ValuesSet = 1 << 3,
- PayloadSet = 1 << 4,
- ErrorSet = 1 << 5,
- ErrorListSet = 1 << 6,
- AllFieldsSet = (ColumnNamesSet | NotesSet | TimestampSet | ValuesSet | PayloadSet | ErrorSet | ErrorListSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*ParameterBundle*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class ParameterBundle;
- public:
-
- Builder<STATE | ColumnNamesSet>& setColumnNames(RefPtr<Inspector::Protocol::Array<String>> value)
- {
- COMPILE_ASSERT(!(STATE & ColumnNamesSet), property_columnNames_already_set);
- m_result->setArray(ASCIILiteral("columnNames"), value);
- return castState<ColumnNamesSet>();
- }
-
- Builder<STATE | NotesSet>& setNotes(const String& value)
- {
- COMPILE_ASSERT(!(STATE & NotesSet), property_notes_already_set);
- m_result->setString(ASCIILiteral("notes"), value);
- return castState<NotesSet>();
- }
-
- Builder<STATE | TimestampSet>& setTimestamp(double value)
- {
- COMPILE_ASSERT(!(STATE & TimestampSet), property_timestamp_already_set);
- m_result->setDouble(ASCIILiteral("timestamp"), value);
- return castState<TimestampSet>();
- }
-
- Builder<STATE | ValuesSet>& setValues(RefPtr<Inspector::InspectorObject> value)
- {
- COMPILE_ASSERT(!(STATE & ValuesSet), property_values_already_set);
- m_result->setObject(ASCIILiteral("values"), value);
- return castState<ValuesSet>();
- }
-
- Builder<STATE | PayloadSet>& setPayload(RefPtr<Inspector::InspectorValue> value)
- {
- COMPILE_ASSERT(!(STATE & PayloadSet), property_payload_already_set);
- m_result->setValue(ASCIILiteral("payload"), value);
- return castState<PayloadSet>();
- }
-
- Builder<STATE | ErrorSet>& setError(RefPtr<Inspector::Protocol::Database::Error> value)
- {
- COMPILE_ASSERT(!(STATE & ErrorSet), property_error_already_set);
- m_result->setObject(ASCIILiteral("error"), value);
- return castState<ErrorSet>();
- }
-
- Builder<STATE | ErrorListSet>& setErrorList(RefPtr<Inspector::Protocol::Database::ErrorList> value)
- {
- COMPILE_ASSERT(!(STATE & ErrorListSet), property_errorList_already_set);
- m_result->setArray(ASCIILiteral("errorList"), value);
- return castState<ErrorListSet>();
- }
-
- Ref<ParameterBundle> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(ParameterBundle) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<ParameterBundle>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<ParameterBundle> result = ParameterBundle::create()
- * .setColumnNames(...)
- * .setNotes(...)
- * .setTimestamp(...)
- * .setValues(...)
- * .setPayload(...)
- * .setError(...)
- * .setErrorList(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-/* Conflicted names may cause generated getters/setters to clash with built-in InspectorObject methods. */
-class ObjectWithPropertyNameConflicts : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- IntegerSet = 1 << 0,
- ArraySet = 1 << 1,
- StringSet = 1 << 2,
- ValueSet = 1 << 3,
- ObjectSet = 1 << 4,
- AllFieldsSet = (IntegerSet | ArraySet | StringSet | ValueSet | ObjectSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*ObjectWithPropertyNameConflicts*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class ObjectWithPropertyNameConflicts;
- public:
-
- Builder<STATE | IntegerSet>& setInteger(const String& value)
- {
- COMPILE_ASSERT(!(STATE & IntegerSet), property_integer_already_set);
- m_result->setString(ASCIILiteral("integer"), value);
- return castState<IntegerSet>();
- }
-
- Builder<STATE | ArraySet>& setArray(const String& value)
- {
- COMPILE_ASSERT(!(STATE & ArraySet), property_array_already_set);
- m_result->setString(ASCIILiteral("array"), value);
- return castState<ArraySet>();
- }
-
- Builder<STATE | StringSet>& setString(const String& value)
- {
- COMPILE_ASSERT(!(STATE & StringSet), property_string_already_set);
- m_result->setString(ASCIILiteral("string"), value);
- return castState<StringSet>();
- }
-
- Builder<STATE | ValueSet>& setValue(const String& value)
- {
- COMPILE_ASSERT(!(STATE & ValueSet), property_value_already_set);
- m_result->setString(ASCIILiteral("value"), value);
- return castState<ValueSet>();
- }
-
- Builder<STATE | ObjectSet>& setObject(const String& value)
- {
- COMPILE_ASSERT(!(STATE & ObjectSet), property_object_already_set);
- m_result->setString(ASCIILiteral("object"), value);
- return castState<ObjectSet>();
- }
-
- Ref<ObjectWithPropertyNameConflicts> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(ObjectWithPropertyNameConflicts) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<ObjectWithPropertyNameConflicts>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<ObjectWithPropertyNameConflicts> result = ObjectWithPropertyNameConflicts::create()
- * .setInteger(...)
- * .setArray(...)
- * .setString(...)
- * .setValue(...)
- * .setObject(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Database
-
-namespace Test {
-class ParameterBundle : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- ColumnNamesSet = 1 << 0,
- NotesSet = 1 << 1,
- TimestampSet = 1 << 2,
- ValuesSet = 1 << 3,
- PayloadSet = 1 << 4,
- ErrorSet = 1 << 5,
- AllFieldsSet = (ColumnNamesSet | NotesSet | TimestampSet | ValuesSet | PayloadSet | ErrorSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*ParameterBundle*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class ParameterBundle;
- public:
-
- Builder<STATE | ColumnNamesSet>& setColumnNames(RefPtr<Inspector::Protocol::Array<String>> value)
- {
- COMPILE_ASSERT(!(STATE & ColumnNamesSet), property_columnNames_already_set);
- m_result->setArray(ASCIILiteral("columnNames"), value);
- return castState<ColumnNamesSet>();
- }
-
- Builder<STATE | NotesSet>& setNotes(const String& value)
- {
- COMPILE_ASSERT(!(STATE & NotesSet), property_notes_already_set);
- m_result->setString(ASCIILiteral("notes"), value);
- return castState<NotesSet>();
- }
-
- Builder<STATE | TimestampSet>& setTimestamp(double value)
- {
- COMPILE_ASSERT(!(STATE & TimestampSet), property_timestamp_already_set);
- m_result->setDouble(ASCIILiteral("timestamp"), value);
- return castState<TimestampSet>();
- }
-
- Builder<STATE | ValuesSet>& setValues(RefPtr<Inspector::InspectorObject> value)
- {
- COMPILE_ASSERT(!(STATE & ValuesSet), property_values_already_set);
- m_result->setObject(ASCIILiteral("values"), value);
- return castState<ValuesSet>();
- }
-
- Builder<STATE | PayloadSet>& setPayload(RefPtr<Inspector::InspectorValue> value)
- {
- COMPILE_ASSERT(!(STATE & PayloadSet), property_payload_already_set);
- m_result->setValue(ASCIILiteral("payload"), value);
- return castState<PayloadSet>();
- }
-
- Builder<STATE | ErrorSet>& setError(RefPtr<Inspector::Protocol::Database::Error> value)
- {
- COMPILE_ASSERT(!(STATE & ErrorSet), property_error_already_set);
- m_result->setObject(ASCIILiteral("error"), value);
- return castState<ErrorSet>();
- }
-
- Ref<ParameterBundle> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(ParameterBundle) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<ParameterBundle>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<ParameterBundle> result = ParameterBundle::create()
- * .setColumnNames(...)
- * .setNotes(...)
- * .setTimestamp(...)
- * .setValues(...)
- * .setPayload(...)
- * .setError(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-} // Test
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolDatabaseError;
-@class RWIProtocolDatabaseOptionalParameterBundle;
-@class RWIProtocolDatabaseParameterBundle;
-@class RWIProtocolDatabaseObjectWithPropertyNameConflicts;
-@class RWIProtocolDatabaseDummyObject;
-@class RWIProtocolTestParameterBundle;
-
-
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseError : RWIProtocolJSONObject
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-/* required */ @property (nonatomic, copy) NSString *message;
-/* required */ @property (nonatomic, assign) int code;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseOptionalParameterBundle : RWIProtocolJSONObject
-/* optional */ @property (nonatomic, copy) NSArray/*<NSString>*/ *columnNames;
-/* optional */ @property (nonatomic, copy) NSString *notes;
-/* optional */ @property (nonatomic, assign) double timestamp;
-/* optional */ @property (nonatomic, retain) RWIProtocolJSONObject *values;
-/* optional */ @property (nonatomic, retain) RWIProtocolJSONObject *payload;
-/* optional */ @property (nonatomic, retain) RWIProtocolDatabaseError *error;
-/* optional */ @property (nonatomic, copy) NSArray/*<RWIProtocolDatabaseError>*/ *errorList;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseParameterBundle : RWIProtocolJSONObject
-- (instancetype)initWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload error:(RWIProtocolDatabaseError *)error errorList:(NSArray/*<RWIProtocolDatabaseError>*/ *)errorList;
-/* required */ @property (nonatomic, copy) NSArray/*<NSString>*/ *columnNames;
-/* required */ @property (nonatomic, copy) NSString *notes;
-/* required */ @property (nonatomic, assign) double timestamp;
-/* required */ @property (nonatomic, retain) RWIProtocolJSONObject *values;
-/* required */ @property (nonatomic, retain) RWIProtocolJSONObject *payload;
-/* required */ @property (nonatomic, retain) RWIProtocolDatabaseError *error;
-/* required */ @property (nonatomic, copy) NSArray/*<RWIProtocolDatabaseError>*/ *errorList;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseObjectWithPropertyNameConflicts : RWIProtocolJSONObject
-- (instancetype)initWithInteger:(NSString *)integer array:(NSString *)array string:(NSString *)string value:(NSString *)value object:(NSString *)object;
-/* required */ @property (nonatomic, copy) NSString *integer;
-/* required */ @property (nonatomic, copy) NSString *array;
-/* required */ @property (nonatomic, copy) NSString *string;
-/* required */ @property (nonatomic, copy) NSString *value;
-/* required */ @property (nonatomic, copy) NSString *object;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolDatabaseDummyObject : RWIProtocolJSONObject
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolTestParameterBundle : RWIProtocolJSONObject
-- (instancetype)initWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload error:(RWIProtocolDatabaseError *)error;
-/* required */ @property (nonatomic, copy) NSArray/*<NSString>*/ *columnNames;
-/* required */ @property (nonatomic, copy) NSString *notes;
-/* required */ @property (nonatomic, assign) double timestamp;
-/* required */ @property (nonatomic, retain) RWIProtocolJSONObject *values;
-/* required */ @property (nonatomic, retain) RWIProtocolJSONObject *payload;
-/* required */ @property (nonatomic, retain) RWIProtocolDatabaseError *error;
-@end
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolDatabaseError
-
-- (instancetype)initWithMessage:(NSString *)message code:(int)code;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(message, @"message");
-
- self.message = message;
- self.code = code;
-
- return self;
-}
-
-- (void)setMessage:(NSString *)message
-{
- [super setString:message forKey:@"message"];
-}
-
-- (NSString *)message
-{
- return [super stringForKey:@"message"];
-}
-
-- (void)setCode:(int)code
-{
- [super setInteger:code forKey:@"code"];
-}
-
-- (int)code
-{
- return [super integerForKey:@"code"];
-}
-
-@end
-
-@implementation RWIProtocolDatabaseOptionalParameterBundle
-
-- (void)setColumnNames:(NSArray/*<NSString>*/ *)columnNames
-{
- [super setInspectorArray:inspectorStringArray(columnNames) forKey:@"columnNames"];
-}
-
-- (NSArray/*<NSString>*/ *)columnNames
-{
- return objcStringArray([super inspectorArrayForKey:@"columnNames"]);
-}
-
-- (void)setNotes:(NSString *)notes
-{
- [super setString:notes forKey:@"notes"];
-}
-
-- (NSString *)notes
-{
- return [super stringForKey:@"notes"];
-}
-
-- (void)setTimestamp:(double)timestamp
-{
- [super setDouble:timestamp forKey:@"timestamp"];
-}
-
-- (double)timestamp
-{
- return [super doubleForKey:@"timestamp"];
-}
-
-- (void)setValues:(RWIProtocolJSONObject *)values
-{
- [super setObject:values forKey:@"values"];
-}
-
-- (RWIProtocolJSONObject *)values
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"values"];
-}
-
-- (void)setPayload:(RWIProtocolJSONObject *)payload
-{
- [super setObject:payload forKey:@"payload"];
-}
-
-- (RWIProtocolJSONObject *)payload
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"payload"];
-}
-
-- (void)setError:(RWIProtocolDatabaseError *)error
-{
- [super setObject:error forKey:@"error"];
-}
-
-- (RWIProtocolDatabaseError *)error
-{
- return (RWIProtocolDatabaseError *)[super objectForKey:@"error"];
-}
-
-- (void)setErrorList:(NSArray/*<RWIProtocolDatabaseError>*/ *)errorList
-{
- THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(errorList, [RWIProtocolDatabaseError class]);
- [super setInspectorArray:inspectorObjectArray(errorList) forKey:@"errorList"];
-}
-
-- (NSArray/*<RWIProtocolDatabaseError>*/ *)errorList
-{
- return objcArray<RWIProtocolDatabaseError>([super inspectorArrayForKey:@"errorList"]);
-}
-
-@end
-
-@implementation RWIProtocolDatabaseParameterBundle
-
-- (instancetype)initWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload error:(RWIProtocolDatabaseError *)error errorList:(NSArray/*<RWIProtocolDatabaseError>*/ *)errorList;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(error, @"error");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(errorList, @"errorList");
- THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(errorList, [RWIProtocolDatabaseError class]);
-
- self.columnNames = columnNames;
- self.notes = notes;
- self.timestamp = timestamp;
- self.values = values;
- self.payload = payload;
- self.error = error;
- self.errorList = errorList;
-
- return self;
-}
-
-- (void)setColumnNames:(NSArray/*<NSString>*/ *)columnNames
-{
- [super setInspectorArray:inspectorStringArray(columnNames) forKey:@"columnNames"];
-}
-
-- (NSArray/*<NSString>*/ *)columnNames
-{
- return objcStringArray([super inspectorArrayForKey:@"columnNames"]);
-}
-
-- (void)setNotes:(NSString *)notes
-{
- [super setString:notes forKey:@"notes"];
-}
-
-- (NSString *)notes
-{
- return [super stringForKey:@"notes"];
-}
-
-- (void)setTimestamp:(double)timestamp
-{
- [super setDouble:timestamp forKey:@"timestamp"];
-}
-
-- (double)timestamp
-{
- return [super doubleForKey:@"timestamp"];
-}
-
-- (void)setValues:(RWIProtocolJSONObject *)values
-{
- [super setObject:values forKey:@"values"];
-}
-
-- (RWIProtocolJSONObject *)values
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"values"];
-}
-
-- (void)setPayload:(RWIProtocolJSONObject *)payload
-{
- [super setObject:payload forKey:@"payload"];
-}
-
-- (RWIProtocolJSONObject *)payload
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"payload"];
-}
-
-- (void)setError:(RWIProtocolDatabaseError *)error
-{
- [super setObject:error forKey:@"error"];
-}
-
-- (RWIProtocolDatabaseError *)error
-{
- return (RWIProtocolDatabaseError *)[super objectForKey:@"error"];
-}
-
-- (void)setErrorList:(NSArray/*<RWIProtocolDatabaseError>*/ *)errorList
-{
- THROW_EXCEPTION_FOR_BAD_TYPE_IN_ARRAY(errorList, [RWIProtocolDatabaseError class]);
- [super setInspectorArray:inspectorObjectArray(errorList) forKey:@"errorList"];
-}
-
-- (NSArray/*<RWIProtocolDatabaseError>*/ *)errorList
-{
- return objcArray<RWIProtocolDatabaseError>([super inspectorArrayForKey:@"errorList"]);
-}
-
-@end
-
-@implementation RWIProtocolDatabaseObjectWithPropertyNameConflicts
-
-- (instancetype)initWithInteger:(NSString *)integer array:(NSString *)array string:(NSString *)string value:(NSString *)value object:(NSString *)object;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(integer, @"integer");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(array, @"array");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(string, @"string");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(value, @"value");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(object, @"object");
-
- self.integer = integer;
- self.array = array;
- self.string = string;
- self.value = value;
- self.object = object;
-
- return self;
-}
-
-- (void)setInteger:(NSString *)integer
-{
- [super setString:integer forKey:@"integer"];
-}
-
-- (NSString *)integer
-{
- return [super stringForKey:@"integer"];
-}
-
-- (void)setArray:(NSString *)array
-{
- [super setString:array forKey:@"array"];
-}
-
-- (NSString *)array
-{
- return [super stringForKey:@"array"];
-}
-
-- (void)setString:(NSString *)string
-{
- [super setString:string forKey:@"string"];
-}
-
-- (NSString *)string
-{
- return [super stringForKey:@"string"];
-}
-
-- (void)setValue:(NSString *)value
-{
- [super setString:value forKey:@"value"];
-}
-
-- (NSString *)value
-{
- return [super stringForKey:@"value"];
-}
-
-- (void)setObject:(NSString *)object
-{
- [super setString:object forKey:@"object"];
-}
-
-- (NSString *)object
-{
- return [super stringForKey:@"object"];
-}
-
-@end
-
-@implementation RWIProtocolDatabaseDummyObject
-
-@end
-
-
-@implementation RWIProtocolTestParameterBundle
-
-- (instancetype)initWithColumnNames:(NSArray/*<NSString>*/ *)columnNames notes:(NSString *)notes timestamp:(double)timestamp values:(RWIProtocolJSONObject *)values payload:(RWIProtocolJSONObject *)payload error:(RWIProtocolDatabaseError *)error;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(columnNames, @"columnNames");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(notes, @"notes");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(values, @"values");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(payload, @"payload");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(error, @"error");
-
- self.columnNames = columnNames;
- self.notes = notes;
- self.timestamp = timestamp;
- self.values = values;
- self.payload = payload;
- self.error = error;
-
- return self;
-}
-
-- (void)setColumnNames:(NSArray/*<NSString>*/ *)columnNames
-{
- [super setInspectorArray:inspectorStringArray(columnNames) forKey:@"columnNames"];
-}
-
-- (NSArray/*<NSString>*/ *)columnNames
-{
- return objcStringArray([super inspectorArrayForKey:@"columnNames"]);
-}
-
-- (void)setNotes:(NSString *)notes
-{
- [super setString:notes forKey:@"notes"];
-}
-
-- (NSString *)notes
-{
- return [super stringForKey:@"notes"];
-}
-
-- (void)setTimestamp:(double)timestamp
-{
- [super setDouble:timestamp forKey:@"timestamp"];
-}
-
-- (double)timestamp
-{
- return [super doubleForKey:@"timestamp"];
-}
-
-- (void)setValues:(RWIProtocolJSONObject *)values
-{
- [super setObject:values forKey:@"values"];
-}
-
-- (RWIProtocolJSONObject *)values
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"values"];
-}
-
-- (void)setPayload:(RWIProtocolJSONObject *)payload
-{
- [super setObject:payload forKey:@"payload"];
-}
-
-- (RWIProtocolJSONObject *)payload
-{
- return (RWIProtocolJSONObject *)[super objectForKey:@"payload"];
-}
-
-- (void)setError:(RWIProtocolDatabaseError *)error
-{
- [super setObject:error forKey:@"error"];
-}
-
-- (RWIProtocolDatabaseError *)error
-{
- return (RWIProtocolDatabaseError *)[super objectForKey:@"error"];
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-declaration-object-type.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result b/Source/JavaScriptCore/inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result
deleted file mode 100644
index 9eb1d40dd..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result
+++ /dev/null
@@ -1,1372 +0,0 @@
-### Begin File: InspectorAlternateBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorAlternateBackendDispatchers_h
-#define InspectorAlternateBackendDispatchers_h
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#include "InspectorProtocolTypes.h"
-#include <JavaScriptCore/InspectorBackendDispatcher.h>
-
-namespace Inspector {
-
-class AlternateBackendDispatcher {
-public:
- void setBackendDispatcher(RefPtr<BackendDispatcher>&& dispatcher) { m_backendDispatcher = WTF::move(dispatcher); }
- BackendDispatcher* backendDispatcher() const { return m_backendDispatcher.get(); }
-private:
- RefPtr<BackendDispatcher> m_backendDispatcher;
-};
-
-
-
-
-} // namespace Inspector
-
-#endif // ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-
-#endif // !defined(InspectorAlternateBackendDispatchers_h)
-### End File: InspectorAlternateBackendDispatchers.h
-
-### Begin File: InspectorBackendCommands.js
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-// Test.
-InspectorBackend.registerEnum("Test.UncastedAnimals", {Pigs: "Pigs", Cows: "Cows", Cats: "Cats", Hens: "Hens"});
-InspectorBackend.registerEnum("Test.CastedAnimals", {Ducks: "Ducks", Hens: "Hens", Crows: "Crows", Flamingos: "Flamingos"});
-### End File: InspectorBackendCommands.js
-
-### Begin File: InspectorBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorBackendDispatchers_h
-#define InspectorBackendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorBackendDispatcher.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-typedef String ErrorString;
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorBackendDispatchers_h)
-### End File: InspectorBackendDispatchers.h
-
-### Begin File: InspectorBackendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorBackendDispatchers.h"
-
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(INSPECTOR_ALTERNATE_DISPATCHERS)
-#include "InspectorAlternateBackendDispatchers.h"
-#endif
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: InspectorBackendDispatchers.cpp
-
-### Begin File: InspectorFrontendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorFrontendDispatchers_h
-#define InspectorFrontendDispatchers_h
-
-#include "InspectorProtocolObjects.h"
-#include <inspector/InspectorFrontendChannel.h>
-#include <inspector/InspectorValues.h>
-#include <wtf/text/WTFString.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-#endif // !defined(InspectorFrontendDispatchers_h)
-### End File: InspectorFrontendDispatchers.h
-
-### Begin File: InspectorFrontendDispatchers.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorFrontendDispatchers.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-} // namespace Inspector
-
-### End File: InspectorFrontendDispatchers.cpp
-
-### Begin File: InspectorProtocolObjects.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#ifndef InspectorProtocolObjects_h
-#define InspectorProtocolObjects_h
-
-#include <inspector/InspectorProtocolTypes.h>
-#include <wtf/Assertions.h>
-
-namespace Inspector {
-
-
-
-namespace Protocol {
-
-// Forward declarations.
-namespace Test {
-class RecursiveObject1;
-class RecursiveObject2;
-class TypeNeedingCast;
-enum class CastedAnimals;
-enum class UncastedAnimals;
-} // Test
-// End of forward declarations.
-
-
-// Typedefs.
-namespace Test {
-typedef int CastedObjectId;
-typedef int UncastedObjectId;
-} // Test
-// End of typedefs.
-
-String getEnumConstantValue(int code);
-
-template<typename T> String getEnumConstantValue(T enumValue)
-{
- return getEnumConstantValue(static_cast<int>(enumValue));
-}
-
-namespace Test {
-/* A dummy type that requires runtime casts, and forces non-primitive referenced types to also emit runtime cast helpers. */
-class TypeNeedingCast : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- StringSet = 1 << 0,
- NumberSet = 1 << 1,
- AnimalsSet = 1 << 2,
- IdSet = 1 << 3,
- TreeSet = 1 << 4,
- AllFieldsSet = (StringSet | NumberSet | AnimalsSet | IdSet | TreeSet)
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*TypeNeedingCast*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class TypeNeedingCast;
- public:
-
- Builder<STATE | StringSet>& setString(const String& value)
- {
- COMPILE_ASSERT(!(STATE & StringSet), property_string_already_set);
- m_result->setString(ASCIILiteral("string"), value);
- return castState<StringSet>();
- }
-
- Builder<STATE | NumberSet>& setNumber(int value)
- {
- COMPILE_ASSERT(!(STATE & NumberSet), property_number_already_set);
- m_result->setInteger(ASCIILiteral("number"), value);
- return castState<NumberSet>();
- }
-
- Builder<STATE | AnimalsSet>& setAnimals(Inspector::Protocol::Test::CastedAnimals value)
- {
- COMPILE_ASSERT(!(STATE & AnimalsSet), property_animals_already_set);
- m_result->setString(ASCIILiteral("animals"), Inspector::Protocol::getEnumConstantValue(static_cast<int>(value)));
- return castState<AnimalsSet>();
- }
-
- Builder<STATE | IdSet>& setId(int value)
- {
- COMPILE_ASSERT(!(STATE & IdSet), property_id_already_set);
- m_result->setInteger(ASCIILiteral("id"), value);
- return castState<IdSet>();
- }
-
- Builder<STATE | TreeSet>& setTree(RefPtr<Inspector::Protocol::Test::RecursiveObject1> value)
- {
- COMPILE_ASSERT(!(STATE & TreeSet), property_tree_already_set);
- m_result->setObject(ASCIILiteral("tree"), value);
- return castState<TreeSet>();
- }
-
- Ref<TypeNeedingCast> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(TypeNeedingCast) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<TypeNeedingCast>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<TypeNeedingCast> result = TypeNeedingCast::create()
- * .setString(...)
- * .setNumber(...)
- * .setAnimals(...)
- * .setId(...)
- * .setTree(...)
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-};
-
-/* */
-enum class UncastedAnimals {
- Pigs = 4,
- Cows = 5,
- Cats = 6,
- Hens = 1,
-}; // enum class UncastedAnimals
-/* */
-enum class CastedAnimals {
- Ducks = 0,
- Hens = 1,
- Crows = 2,
- Flamingos = 3,
-}; // enum class CastedAnimals
-class RecursiveObject1 : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- AllFieldsSet = 0
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*RecursiveObject1*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class RecursiveObject1;
- public:
-
- Ref<RecursiveObject1> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(RecursiveObject1) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<RecursiveObject1>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<RecursiveObject1> result = RecursiveObject1::create()
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-
- void setObj(RefPtr<Inspector::Protocol::Test::RecursiveObject2> value)
- {
- InspectorObjectBase::setObject(ASCIILiteral("obj"), WTF::move(value));
- }
-};
-
-class RecursiveObject2 : public Inspector::InspectorObjectBase {
-public:
- enum {
- NoFieldsSet = 0,
- AllFieldsSet = 0
- };
-
- template<int STATE>
- class Builder {
- private:
- RefPtr<InspectorObject> m_result;
-
- template<int STEP> Builder<STATE | STEP>& castState()
- {
- return *reinterpret_cast<Builder<STATE | STEP>*>(this);
- }
-
- Builder(Ref</*RecursiveObject2*/InspectorObject>&& object)
- : m_result(WTF::move(object))
- {
- COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_state);
- }
- friend class RecursiveObject2;
- public:
-
- Ref<RecursiveObject2> release()
- {
- COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready);
- COMPILE_ASSERT(sizeof(RecursiveObject2) == sizeof(InspectorObject), cannot_cast);
-
- Ref<InspectorObject> result = m_result.releaseNonNull();
- return WTF::move(*reinterpret_cast<Ref<RecursiveObject2>*>(&result));
- }
- };
-
- /*
- * Synthetic constructor:
- * Ref<RecursiveObject2> result = RecursiveObject2::create()
- * .release();
- */
- static Builder<NoFieldsSet> create()
- {
- return Builder<NoFieldsSet>(InspectorObject::create());
- }
-
- void setObj(RefPtr<Inspector::Protocol::Test::RecursiveObject1> value)
- {
- InspectorObjectBase::setObject(ASCIILiteral("obj"), WTF::move(value));
- }
-};
-
-} // Test
-
-template<> struct BindingTraits<Inspector::Protocol::Test::CastedAnimals> {
-#if !ASSERT_DISABLED
-static void assertValueHasExpectedType(Inspector::InspectorValue*);
-#endif // !ASSERT_DISABLED
-};
-template<> struct BindingTraits<Inspector::Protocol::Test::TypeNeedingCast> {
-static RefPtr<Inspector::Protocol::Test::TypeNeedingCast> runtimeCast(RefPtr<Inspector::InspectorValue>&& value);
-#if !ASSERT_DISABLED
-static void assertValueHasExpectedType(Inspector::InspectorValue*);
-#endif // !ASSERT_DISABLED
-};
-template<> struct BindingTraits<Inspector::Protocol::Test::RecursiveObject1> {
-#if !ASSERT_DISABLED
-static void assertValueHasExpectedType(Inspector::InspectorValue*);
-#endif // !ASSERT_DISABLED
-};
-template<> struct BindingTraits<Inspector::Protocol::Test::RecursiveObject2> {
-#if !ASSERT_DISABLED
-static void assertValueHasExpectedType(Inspector::InspectorValue*);
-#endif // !ASSERT_DISABLED
-};
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-#endif // !defined(InspectorProtocolObjects_h)
-### End File: InspectorProtocolObjects.h
-
-### Begin File: InspectorProtocolObjects.cpp
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#include "config.h"
-#include "InspectorProtocolObjects.h"
-
-#include <wtf/text/CString.h>
-
-namespace Inspector {
-
-namespace Protocol {
-
-static const char* const enum_constant_values[] = {
- "Ducks",
- "Hens",
- "Crows",
- "Flamingos",
- "Pigs",
- "Cows",
- "Cats",
-};
-
-String getEnumConstantValue(int code) {
- return enum_constant_values[code];
-}
-
-
-
-#if !ASSERT_DISABLED
-void BindingTraits<Inspector::Protocol::Test::CastedAnimals>::assertValueHasExpectedType(Inspector::InspectorValue* value)
-{
- ASSERT_ARG(value, value);
- String result;
- bool castSucceeded = value->asString(result);
- ASSERT(castSucceeded);
- ASSERT(result == "Ducks" || result == "Hens" || result == "Crows" || result == "Flamingos");
-}
-#endif // !ASSERT_DISABLED
-
-#if !ASSERT_DISABLED
-void BindingTraits<Inspector::Protocol::Test::TypeNeedingCast>::assertValueHasExpectedType(Inspector::InspectorValue* value)
-{
- ASSERT_ARG(value, value);
- RefPtr<InspectorObject> object;
- bool castSucceeded = value->asObject(object);
- ASSERT_UNUSED(castSucceeded, castSucceeded);
- {
- InspectorObject::iterator stringPos = object->find(ASCIILiteral("string"));
- ASSERT(stringPos != object->end());
- BindingTraits<String>::assertValueHasExpectedType(stringPos->value.get());
- }
- {
- InspectorObject::iterator numberPos = object->find(ASCIILiteral("number"));
- ASSERT(numberPos != object->end());
- BindingTraits<int>::assertValueHasExpectedType(numberPos->value.get());
- }
- {
- InspectorObject::iterator animalsPos = object->find(ASCIILiteral("animals"));
- ASSERT(animalsPos != object->end());
- BindingTraits<Inspector::Protocol::Test::CastedAnimals>::assertValueHasExpectedType(animalsPos->value.get());
- }
- {
- InspectorObject::iterator idPos = object->find(ASCIILiteral("id"));
- ASSERT(idPos != object->end());
- BindingTraits<int>::assertValueHasExpectedType(idPos->value.get());
- }
- {
- InspectorObject::iterator treePos = object->find(ASCIILiteral("tree"));
- ASSERT(treePos != object->end());
- BindingTraits<Inspector::Protocol::Test::RecursiveObject1>::assertValueHasExpectedType(treePos->value.get());
- }
-
- int foundPropertiesCount = 5;
- if (foundPropertiesCount != object->size())
- FATAL("Unexpected properties in object: %s\n", object->toJSONString().ascii().data());
-}
-#endif // !ASSERT_DISABLED
-
-RefPtr<Inspector::Protocol::Test::TypeNeedingCast> BindingTraits<Inspector::Protocol::Test::TypeNeedingCast>::runtimeCast(RefPtr<InspectorValue>&& value)
-{
- RefPtr<InspectorObject> result;
- bool castSucceeded = value->asObject(result);
- ASSERT_UNUSED(castSucceeded, castSucceeded);
-#if !ASSERT_DISABLED
- BindingTraits<Inspector::Protocol::Test::TypeNeedingCast>::assertValueHasExpectedType(result.get());
-#endif // !ASSERT_DISABLED
- COMPILE_ASSERT(sizeof(Inspector::Protocol::Test::TypeNeedingCast) == sizeof(InspectorObjectBase), type_cast_problem);
- return static_cast<Inspector::Protocol::Test::TypeNeedingCast*>(static_cast<InspectorObjectBase*>(result.get()));
-}
-
-
-#if !ASSERT_DISABLED
-void BindingTraits<Inspector::Protocol::Test::RecursiveObject1>::assertValueHasExpectedType(Inspector::InspectorValue* value)
-{
- ASSERT_ARG(value, value);
- RefPtr<InspectorObject> object;
- bool castSucceeded = value->asObject(object);
- ASSERT_UNUSED(castSucceeded, castSucceeded);
-
- int foundPropertiesCount = 0;
- {
- InspectorObject::iterator objPos = object->find(ASCIILiteral("obj"));
- if (objPos != object->end()) {
- BindingTraits<Inspector::Protocol::Test::RecursiveObject2>::assertValueHasExpectedType(objPos->value.get());
- ++foundPropertiesCount;
- }
- }
- if (foundPropertiesCount != object->size())
- FATAL("Unexpected properties in object: %s\n", object->toJSONString().ascii().data());
-}
-#endif // !ASSERT_DISABLED
-
-#if !ASSERT_DISABLED
-void BindingTraits<Inspector::Protocol::Test::RecursiveObject2>::assertValueHasExpectedType(Inspector::InspectorValue* value)
-{
- ASSERT_ARG(value, value);
- RefPtr<InspectorObject> object;
- bool castSucceeded = value->asObject(object);
- ASSERT_UNUSED(castSucceeded, castSucceeded);
-
- int foundPropertiesCount = 0;
- {
- InspectorObject::iterator objPos = object->find(ASCIILiteral("obj"));
- if (objPos != object->end()) {
- BindingTraits<Inspector::Protocol::Test::RecursiveObject1>::assertValueHasExpectedType(objPos->value.get());
- ++foundPropertiesCount;
- }
- }
- if (foundPropertiesCount != object->size())
- FATAL("Unexpected properties in object: %s\n", object->toJSONString().ascii().data());
-}
-#endif // !ASSERT_DISABLED
-
-} // namespace Protocol
-
-} // namespace Inspector
-
-### End File: InspectorProtocolObjects.cpp
-
-### Begin File: RWIProtocolBackendDispatchers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.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: RWIProtocolBackendDispatchers.h
-
-### Begin File: RWIProtocolConfiguration.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolConfiguration.h"
-
-#import "RWIProtocolInternal.h"
-#import "RWIProtocolBackendDispatchers.h"
-#import <JavaScriptCore/AlternateDispatchableAgent.h>
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorAlternateBackendDispatchers.h>
-#import <JavaScriptCore/InspectorBackendDispatchers.h>
-
-using namespace Inspector;
-
-@implementation RWIProtocolConfiguration
-{
- 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: RWIProtocolConfiguration.mm
-
-### Begin File: RWIProtocolConfiguration.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolConfiguration : NSObject
-@end
-
-
-### End File: RWIProtocolConfiguration.h
-
-### Begin File: RWIProtocolBackendDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolBackendDispatchers.h"
-
-#include "RWIProtocolInternal.h"
-#include "RWIProtocolEnumConversionHelpers.h"
-#include <JavaScriptCore/InspectorFrontendChannel.h>
-#include <JavaScriptCore/InspectorValues.h>
-
-namespace Inspector {
-
-
-
-} // namespace Inspector
-
-### End File: RWIProtocolBackendDispatchers.mm
-
-### Begin File: RWIProtocolEnumConversionHelpers.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocolArrayConversionHelpers.h"
-
-namespace Inspector {
-
-template<typename ObjCEnumType>
-ObjCEnumType fromProtocolString(const String& value);
-
-
-inline String toProtocolString(RWIProtocolTestUncastedAnimals value)
-{
- switch(value) {
- case RWIProtocolTestUncastedAnimalsPigs:
- return ASCIILiteral("Pigs");
- case RWIProtocolTestUncastedAnimalsCows:
- return ASCIILiteral("Cows");
- case RWIProtocolTestUncastedAnimalsCats:
- return ASCIILiteral("Cats");
- case RWIProtocolTestUncastedAnimalsHens:
- return ASCIILiteral("Hens");
- }
-}
-
-template<>
-inline RWIProtocolTestUncastedAnimals fromProtocolString(const String& value)
-{
- if (value == "Pigs")
- return RWIProtocolTestUncastedAnimalsPigs;
- if (value == "Cows")
- return RWIProtocolTestUncastedAnimalsCows;
- if (value == "Cats")
- return RWIProtocolTestUncastedAnimalsCats;
- if (value == "Hens")
- return RWIProtocolTestUncastedAnimalsHens;
- ASSERT_NOT_REACHED();
- return RWIProtocolTestUncastedAnimalsPigs;
-}
-
-inline String toProtocolString(RWIProtocolTestCastedAnimals value)
-{
- switch(value) {
- case RWIProtocolTestCastedAnimalsDucks:
- return ASCIILiteral("Ducks");
- case RWIProtocolTestCastedAnimalsHens:
- return ASCIILiteral("Hens");
- case RWIProtocolTestCastedAnimalsCrows:
- return ASCIILiteral("Crows");
- case RWIProtocolTestCastedAnimalsFlamingos:
- return ASCIILiteral("Flamingos");
- }
-}
-
-template<>
-inline RWIProtocolTestCastedAnimals fromProtocolString(const String& value)
-{
- if (value == "Ducks")
- return RWIProtocolTestCastedAnimalsDucks;
- if (value == "Hens")
- return RWIProtocolTestCastedAnimalsHens;
- if (value == "Crows")
- return RWIProtocolTestCastedAnimalsCrows;
- if (value == "Flamingos")
- return RWIProtocolTestCastedAnimalsFlamingos;
- ASSERT_NOT_REACHED();
- return RWIProtocolTestCastedAnimalsDucks;
-}
-
-} // namespace Inspector
-
-### End File: RWIProtocolEnumConversionHelpers.h
-
-### Begin File: RWIProtocolEventDispatchers.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorFrontendChannel.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-using namespace Inspector;
-
-
-
-
-### End File: RWIProtocolEventDispatchers.mm
-
-### Begin File: RWIProtocol.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import <Foundation/Foundation.h>
-
-#import <WebInspector/RWIProtocolJSONObject.h>
-
-
-@class RWIProtocolTestTypeNeedingCast;
-@class RWIProtocolTestRecursiveObject1;
-@class RWIProtocolTestRecursiveObject2;
-
-
-typedef NS_ENUM(NSInteger, RWIProtocolTestUncastedAnimals) {
- RWIProtocolTestUncastedAnimalsPigs,
- RWIProtocolTestUncastedAnimalsCows,
- RWIProtocolTestUncastedAnimalsCats,
- RWIProtocolTestUncastedAnimalsHens,
-};
-
-typedef NS_ENUM(NSInteger, RWIProtocolTestCastedAnimals) {
- RWIProtocolTestCastedAnimalsDucks,
- RWIProtocolTestCastedAnimalsHens,
- RWIProtocolTestCastedAnimalsCrows,
- RWIProtocolTestCastedAnimalsFlamingos,
-};
-
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolTestTypeNeedingCast : RWIProtocolJSONObject
-- (instancetype)initWithString:(NSString *)string number:(int)number animals:(RWIProtocolTestCastedAnimals)animals identifier:(int)identifier tree:(RWIProtocolTestRecursiveObject1 *)tree;
-/* required */ @property (nonatomic, copy) NSString *string;
-/* required */ @property (nonatomic, assign) int number;
-/* required */ @property (nonatomic, assign) RWIProtocolTestCastedAnimals animals;
-/* required */ @property (nonatomic, assign) int identifier;
-/* required */ @property (nonatomic, retain) RWIProtocolTestRecursiveObject1 *tree;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolTestRecursiveObject1 : RWIProtocolJSONObject
-/* optional */ @property (nonatomic, retain) RWIProtocolTestRecursiveObject2 *obj;
-@end
-
-__attribute__((visibility ("default")))
-@interface RWIProtocolTestRecursiveObject2 : RWIProtocolJSONObject
-/* optional */ @property (nonatomic, retain) RWIProtocolTestRecursiveObject1 *obj;
-@end
-
-
-
-
-
-
-### End File: RWIProtocol.h
-
-### Begin File: RWIProtocolTypes.mm
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "config.h"
-#import "RWIProtocolInternal.h"
-
-#import "RWIProtocolEnumConversionHelpers.h"
-#import <JavaScriptCore/InspectorValues.h>
-#import <wtf/Assertions.h>
-
-using namespace Inspector;
-
-
-@implementation RWIProtocolTestTypeNeedingCast
-
-- (instancetype)initWithString:(NSString *)string number:(int)number animals:(RWIProtocolTestCastedAnimals)animals identifier:(int)identifier tree:(RWIProtocolTestRecursiveObject1 *)tree;
-{
- self = [super init];
- if (!self)
- return nil;
-
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(string, @"string");
- THROW_EXCEPTION_FOR_REQUIRED_PROPERTY(tree, @"tree");
-
- self.string = string;
- self.number = number;
- self.animals = animals;
- self.identifier = identifier;
- self.tree = tree;
-
- return self;
-}
-
-- (void)setString:(NSString *)string
-{
- [super setString:string forKey:@"string"];
-}
-
-- (NSString *)string
-{
- return [super stringForKey:@"string"];
-}
-
-- (void)setNumber:(int)number
-{
- [super setInteger:number forKey:@"number"];
-}
-
-- (int)number
-{
- return [super integerForKey:@"number"];
-}
-
-- (void)setAnimals:(RWIProtocolTestCastedAnimals)animals
-{
- [super setString:toProtocolString(animals) forKey:@"animals"];
-}
-
-- (RWIProtocolTestCastedAnimals)animals
-{
- return fromProtocolString<RWIProtocolTestCastedAnimals>([super stringForKey:@"animals"]);
-}
-
-- (void)setIdentifier:(int)identifier
-{
- [super setInteger:identifier forKey:@"id"];
-}
-
-- (int)identifier
-{
- return [super integerForKey:@"id"];
-}
-
-- (void)setTree:(RWIProtocolTestRecursiveObject1 *)tree
-{
- [super setObject:tree forKey:@"tree"];
-}
-
-- (RWIProtocolTestRecursiveObject1 *)tree
-{
- return (RWIProtocolTestRecursiveObject1 *)[super objectForKey:@"tree"];
-}
-
-@end
-
-@implementation RWIProtocolTestRecursiveObject1
-
-- (void)setObj:(RWIProtocolTestRecursiveObject2 *)obj
-{
- [super setObject:obj forKey:@"obj"];
-}
-
-- (RWIProtocolTestRecursiveObject2 *)obj
-{
- return (RWIProtocolTestRecursiveObject2 *)[super objectForKey:@"obj"];
-}
-
-@end
-
-@implementation RWIProtocolTestRecursiveObject2
-
-- (void)setObj:(RWIProtocolTestRecursiveObject1 *)obj
-{
- [super setObject:obj forKey:@"obj"];
-}
-
-- (RWIProtocolTestRecursiveObject1 *)obj
-{
- return (RWIProtocolTestRecursiveObject1 *)[super objectForKey:@"obj"];
-}
-
-@end
-
-
-### End File: RWIProtocolTypes.mm
-
-### Begin File: RWIProtocolInternal.h
-/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
- * Copyright (C) 2013, 2014 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 type-requiring-runtime-casts.json
-// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
-
-#import "RWIProtocol.h"
-#import "RWIProtocolJSONObjectInternal.h"
-#import <JavaScriptCore/AugmentableInspectorController.h>
-#import <JavaScriptCore/InspectorValues.h>
-
-
-
-
-### End File: RWIProtocolInternal.h
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-domain-availability.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-domain-availability.json
deleted file mode 100644
index 36ee2c600..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-domain-availability.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "domain": "WebOnly",
- "availability": "webb",
- "commands": [
- {
- "name": "enable"
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-call-parameter-names.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-call-parameter-names.json
deleted file mode 100644
index bab76ca62..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-call-parameter-names.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "domain": "Overlay",
- "commands": [
- {
- "name": "processPoints",
- "parameters": [
- { "name": "point", "type": "number" },
- { "name": "point", "type": "number" }
- ],
- "returns": [
- { "name": "result1", "type": "string" },
- { "name": "result2", "type": "string" }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-return-parameter-names.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-return-parameter-names.json
deleted file mode 100644
index c8bb15c04..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-command-return-parameter-names.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "domain": "Overlay",
- "commands": [
- {
- "name": "processPoints",
- "parameters": [
- { "name": "point1", "type": "number" },
- { "name": "point2", "type": "number" }
- ],
- "returns": [
- { "name": "result", "type": "string" },
- { "name": "result", "type": "string" }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-event-parameter-names.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-event-parameter-names.json
deleted file mode 100644
index d3d3b3cc6..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-event-parameter-names.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "domain": "Overlay",
- "events": [
- {
- "name": "processedPoints",
- "parameters": [
- { "name": "point", "type": "number" },
- { "name": "point", "type": "number" }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-declarations.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-declarations.json
deleted file mode 100644
index 702fc6a32..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-declarations.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "string",
- "description": "Unique object identifier."
- },
- {
- "id": "RemoteObjectId",
- "type": "string",
- "description": "Unique object identifier."
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-member-names.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-member-names.json
deleted file mode 100644
index aebacee8b..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-duplicate-type-member-names.json
+++ /dev/null
@@ -1,15 +0,0 @@
-[
-{
- "domain": "OverlayTypes",
- "types": [
- {
- "id": "Point",
- "type": "object",
- "properties": [
- { "name": "x", "type": "integer" },
- { "name": "x", "type": "integer" }
- ]
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-enum-with-no-values.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-enum-with-no-values.json
deleted file mode 100644
index 232a7c324..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-enum-with-no-values.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "PrimaryColors",
- "type": "string",
- "enum": []
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-parameter-flag.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-parameter-flag.json
deleted file mode 100644
index 4012c79b6..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-parameter-flag.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "DatabaseId",
- "type": "string",
- "description": "Unique identifier of Database object."
- }
- ],
- "events": [
- {
- "name": "didExecuteOptionalParameters",
- "parameters": [
- { "name": "columnNames", "type": "string", "optional": "true" }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-type-member.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-type-member.json
deleted file mode 100644
index ca3ef28a8..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-string-typed-optional-type-member.json
+++ /dev/null
@@ -1,16 +0,0 @@
-[
-{
- "domain": "Database",
- "types": [
- {
- "id": "Error",
- "type": "object",
- "description": "Database error.",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code.", "optional": "false" }
- ]
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-declaration-using-type-reference.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-declaration-using-type-reference.json
deleted file mode 100644
index 19b7590cc..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-declaration-using-type-reference.json
+++ /dev/null
@@ -1,13 +0,0 @@
-[
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "object",
- "$ref": "SomeType",
- "description": "Unique object identifier."
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-with-lowercase-name.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-with-lowercase-name.json
deleted file mode 100644
index 531901e4a..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-type-with-lowercase-name.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "domain": "Database",
- "types": [
- {
- "id": "databaseId",
- "type": "integer",
- "description": "Unique identifier of Database object."
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-declaration.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-declaration.json
deleted file mode 100644
index d6887a274..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-declaration.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "dragon",
- "description": "Unique object identifier."
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-member.json b/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-member.json
deleted file mode 100644
index b817db504..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/fail-on-unknown-type-reference-in-type-member.json
+++ /dev/null
@@ -1,15 +0,0 @@
-[
-{
- "domain": "Fantasy",
- "types": [
- {
- "id": "DragonEgg",
- "type": "object",
- "description": "A dragon egg.",
- "properties": [
- { "name": "color", "$ref": "Color" }
- ]
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generate-domains-with-feature-guards.json b/Source/JavaScriptCore/inspector/scripts/tests/generate-domains-with-feature-guards.json
deleted file mode 100644
index 67cf8e582..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/generate-domains-with-feature-guards.json
+++ /dev/null
@@ -1,36 +0,0 @@
-[
-{
- "domain": "Network1",
- "featureGuard": "PLATFORM(WEB_COMMANDS)",
- "commands": [
- {
- "name": "loadResource",
- "description": "Loads a resource in the context of a frame on the inspected page without cross origin checks."
- }
- ]
-},
-{
- "domain": "Network2",
- "featureGuard": "PLATFORM(WEB_TYPES)",
- "types": [
- {
- "id": "NetworkError",
- "type": "object",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code." }
- ]
- }
- ]
-},
-{
- "domain": "Network3",
- "featureGuard": "PLATFORM(WEB_EVENTS)",
- "events": [
- {
- "name": "resourceLoaded",
- "description": "A resource was loaded."
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/same-type-id-different-domain.json b/Source/JavaScriptCore/inspector/scripts/tests/same-type-id-different-domain.json
deleted file mode 100644
index 3bf4dff5c..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/same-type-id-different-domain.json
+++ /dev/null
@@ -1,22 +0,0 @@
-[
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "string",
- "description": "Unique object identifier."
- }
- ]
-},
-{
- "domain": "Runtime2",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "string",
- "description": "Unique object identifier."
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/shadowed-optional-type-setters.json b/Source/JavaScriptCore/inspector/scripts/tests/shadowed-optional-type-setters.json
deleted file mode 100644
index 20a0c1552..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/shadowed-optional-type-setters.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "KeyPath",
- "type": "object",
- "description": "Key path.",
- "properties": [
- {
- "name": "type",
- "type": "string",
- "enum": ["null", "string", "array"],
- "description": "Key path type."
- },
- {
- "name": "string",
- "type": "string",
- "optional": true,
- "description": "String value."
- },
- {
- "name": "array",
- "type": "array",
- "optional": true,
- "items": { "type": "string" },
- "description": "Array value."
- }
- ]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-aliased-primitive-type.json b/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-aliased-primitive-type.json
deleted file mode 100644
index cbc9d5394..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-aliased-primitive-type.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "RemoteObjectId",
- "type": "integer",
- "description": "Unique object identifier."
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-array-type.json b/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-array-type.json
deleted file mode 100644
index cfb08bd94..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-array-type.json
+++ /dev/null
@@ -1,50 +0,0 @@
-[
-{
- "domain": "Debugger",
- "types": [
- {
- "id": "BreakpointId",
- "type": "integer"
- },
- {
- "id": "Reason",
- "type": "string",
- "enum": ["Died", "Fainted", "Hungry"]
- }
- ]
-},
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "ObjectId",
- "type": "integer"
- },
- {
- "id": "LuckyNumbers",
- "type": "array",
- "items": { "type": "integer" }
- },
- {
- "id": "BabyNames",
- "type": "array",
- "items": { "type": "string" }
- },
- {
- "id": "NewObjects",
- "type": "array",
- "items": { "$ref": "ObjectId" }
- },
- {
- "id": "OldObjects",
- "type": "array",
- "items": { "$ref": "Debugger.BreakpointId" }
- },
- {
- "id": "StopReasons",
- "type": "array",
- "items": { "$ref": "Debugger.Reason" }
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-enum-type.json b/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-enum-type.json
deleted file mode 100644
index 9f0aee9c9..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-enum-type.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "domain": "Runtime",
- "types": [
- {
- "id": "FarmAnimals",
- "type": "string",
- "enum": ["Pigs", "Cows", "Cats", "Hens"]
- },
- {
- "id": "TwoLeggedAnimals",
- "type": "string",
- "enum": ["Ducks", "Hens", "Crows", "Flamingos"]
- }
- ]
-}
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-object-type.json b/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-object-type.json
deleted file mode 100644
index 178309197..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/type-declaration-object-type.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-{
- "domain": "Database",
- "description": "Test type builder generation of various object types.",
- "types": [
- {
- "id": "Error",
- "type": "object",
- "description": "Database error.",
- "properties": [
- { "name": "message", "type": "string", "description": "Error message." },
- { "name": "code", "type": "integer", "description": "Error code." }
- ]
- },
- {
- "id": "ErrorList",
- "type": "array",
- "items": { "$ref": "Error" }
- },
- {
- "id": "OptionalParameterBundle",
- "type": "object",
- "properties": [
- { "name": "columnNames", "type": "array", "optional": true, "items": { "type": "string" } },
- { "name": "notes", "type": "string", "optional": true },
- { "name": "timestamp", "type": "number", "optional": true },
- { "name": "values", "type": "object", "optional": true },
- { "name": "payload", "type": "any", "optional": true },
- { "name": "error", "$ref": "Error", "optional": true },
- { "name": "errorList", "$ref": "ErrorList", "optional": true }
- ]
- },
- {
- "id": "ParameterBundle",
- "type": "object",
- "properties": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "error", "$ref": "Error" },
- { "name": "errorList", "$ref": "ErrorList" }
- ]
- },
- {
- "id": "ObjectWithPropertyNameConflicts",
- "description": "Conflicted names may cause generated getters/setters to clash with built-in InspectorObject methods.",
- "type": "object",
- "properties": [
- { "name": "integer", "type": "string" },
- { "name": "array", "type": "string" },
- { "name": "string", "type": "string" },
- { "name": "value", "type": "string" },
- { "name": "object", "type": "string" }
- ]
- },
- {
- "id": "DummyObject",
- "description": "An open object that doesn't have any predefined fields.",
- "type": "object"
- }
- ]
-},
-{
- "domain": "Test",
- "description": "Test the generation of special behaviors that only apply to specific classes.",
- "types": [
- {
- "id": "ParameterBundle",
- "type": "object",
- "properties": [
- { "name": "columnNames", "type": "array", "items": { "type": "string" } },
- { "name": "notes", "type": "string" },
- { "name": "timestamp", "type": "number" },
- { "name": "values", "type": "object" },
- { "name": "payload", "type": "any" },
- { "name": "error", "$ref": "Database.Error" }
- ]
- }
- ]
-}
-]
diff --git a/Source/JavaScriptCore/inspector/scripts/tests/type-requiring-runtime-casts.json b/Source/JavaScriptCore/inspector/scripts/tests/type-requiring-runtime-casts.json
deleted file mode 100644
index 83d94be89..000000000
--- a/Source/JavaScriptCore/inspector/scripts/tests/type-requiring-runtime-casts.json
+++ /dev/null
@@ -1,51 +0,0 @@
-[
-{
- "domain": "Test",
- "types": [
- {
- "id": "TypeNeedingCast",
- "type": "object",
- "description": "A dummy type that requires runtime casts, and forces non-primitive referenced types to also emit runtime cast helpers.",
- "properties": [
- { "name": "string", "type": "string", "description": "String member." },
- { "name": "number", "type": "integer", "description": "Number member." },
- { "name": "animals", "$ref": "CastedAnimals", "description": "Enum member." },
- { "name": "id", "$ref": "CastedObjectId", "description": "Aliased member." },
- { "name": "tree", "$ref": "RecursiveObject1", "description": "Recursive object member." }
- ]
- },
- {
- "id": "CastedObjectId",
- "type": "integer"
- },
- {
- "id": "UncastedObjectId",
- "type": "integer"
- },
- {
- "id": "UncastedAnimals",
- "type": "string",
- "enum": ["Pigs", "Cows", "Cats", "Hens"]
- },
- {
- "id": "CastedAnimals",
- "type": "string",
- "enum": ["Ducks", "Hens", "Crows", "Flamingos"]
- },
- {
- "id": "RecursiveObject1",
- "type": "object",
- "properties": [
- { "name": "obj", "$ref": "RecursiveObject2", "optional": true }
- ]
- },
- {
- "id": "RecursiveObject2",
- "type": "object",
- "properties": [
- { "name": "obj", "$ref": "RecursiveObject1", "optional": true }
- ]
- }
- ]
-}
-]