Diff
Modified: trunk/Source/WebCore/CMakeLists.txt (105742 => 105743)
--- trunk/Source/WebCore/CMakeLists.txt 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/CMakeLists.txt 2012-01-24 17:46:09 UTC (rev 105743)
@@ -2273,12 +2273,12 @@
LIST(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorProtocolVersion.h)
ADD_CUSTOM_COMMAND(
- OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.h ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.h
+ OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.h ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.h ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorTypeBuilder.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorTypeBuilder.h
MAIN_DEPENDENCY inspector/Inspector.json
DEPENDS ${WEBCORE_DIR}/inspector/CodeGeneratorInspector.py
- COMMAND ${PYTHON_EXECUTABLE} ${WEBCORE_DIR}/inspector/CodeGeneratorInspector.py ${WEBCORE_DIR}/inspector/Inspector.json --output_h_dir "${DERIVED_SOURCES_WEBCORE_DIR}" --output_cpp_dir "${DERIVED_SOURCES_WEBCORE_DIR}" --defines "${FEATURE_DEFINES_JAVASCRIPT}"
+ COMMAND ${PYTHON_EXECUTABLE} ${WEBCORE_DIR}/inspector/CodeGeneratorInspector.py ${WEBCORE_DIR}/inspector/Inspector.json --output_h_dir "${DERIVED_SOURCES_WEBCORE_DIR}" --output_cpp_dir "${DERIVED_SOURCES_WEBCORE_DIR}"
VERBATIM)
-LIST(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.cpp)
+LIST(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorBackendDispatcher.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorFrontend.cpp ${DERIVED_SOURCES_WEBCORE_DIR}/InspectorTypeBuilder.cpp)
# Generate InjectedScriptSource.h
Modified: trunk/Source/WebCore/ChangeLog (105742 => 105743)
--- trunk/Source/WebCore/ChangeLog 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/ChangeLog 2012-01-24 17:46:09 UTC (rev 105743)
@@ -1,3 +1,26 @@
+2012-01-24 Peter Rybin <peter.ry...@gmail.com>
+
+ Web Inspector: CodeGeneratorInspector.py: put TypeBuilder namespace in a separate sources
+ https://bugs.webkit.org/show_bug.cgi?id=76868
+
+ Reviewed by Yury Semikhatsky.
+
+ Configurations of (hopefully) all build systems are fixed.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/CodeGeneratorInspector.py:
+ (dash_to_camelcase):
+ (InspectorFrontend_h):
+ (InspectorBackendDispatcher_h):
+
2012-01-24 Mario Sanchez Prada <msanc...@igalia.com>
[GTK] Refactor GTK's accessibilitity code to be more modular
Modified: trunk/Source/WebCore/DerivedSources.make (105742 => 105743)
--- trunk/Source/WebCore/DerivedSources.make 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/DerivedSources.make 2012-01-24 17:46:09 UTC (rev 105743)
@@ -942,7 +942,7 @@
INSPECTOR_GENERATOR_SCRIPTS = inspector/CodeGeneratorInspector.py
InspectorFrontend.h : Inspector.json $(INSPECTOR_GENERATOR_SCRIPTS)
- python $(WebCore)/inspector/CodeGeneratorInspector.py $(WebCore)/inspector/Inspector.json --output_h_dir . --output_cpp_dir . --defines "$(FEATURE_DEFINES) LANGUAGE_JAVASCRIPT"
+ python $(WebCore)/inspector/CodeGeneratorInspector.py $(WebCore)/inspector/Inspector.json --output_h_dir . --output_cpp_dir .
all : InjectedScriptSource.h
Modified: trunk/Source/WebCore/DerivedSources.pri (105742 => 105743)
--- trunk/Source/WebCore/DerivedSources.pri 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/DerivedSources.pri 2012-01-24 17:46:09 UTC (rev 105743)
@@ -725,10 +725,10 @@
inspectorValidate.add_output_to_sources = false
GENERATORS += inspectorValidate
-inspectorJSON.output = InspectorFrontend.cpp InspectorBackendDispatcher.cpp
+inspectorJSON.output = InspectorFrontend.cpp InspectorBackendDispatcher.cpp InspectorTypeBuilder.cpp
inspectorJSON.input = INSPECTOR_JSON
inspectorJSON.script = $$PWD/inspector/CodeGeneratorInspector.py
-inspectorJSON.commands = python $$inspectorJSON.script $$PWD/inspector/Inspector.json --output_h_dir ${QMAKE_FUNC_FILE_OUT_PATH} --output_cpp_dir ${QMAKE_FUNC_FILE_OUT_PATH} --defines \"$${FEATURE_DEFINES_JAVASCRIPT}\"
+inspectorJSON.commands = python $$inspectorJSON.script $$PWD/inspector/Inspector.json --output_h_dir ${QMAKE_FUNC_FILE_OUT_PATH} --output_cpp_dir ${QMAKE_FUNC_FILE_OUT_PATH}
inspectorJSON.depends = $$inspectorJSON.script
GENERATORS += inspectorJSON
Modified: trunk/Source/WebCore/GNUmakefile.am (105742 => 105743)
--- trunk/Source/WebCore/GNUmakefile.am 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/GNUmakefile.am 2012-01-24 17:46:09 UTC (rev 105743)
@@ -720,7 +720,9 @@
$(AM_V_GEN)$(PYTHON) $(WebCore)/inspector/generate-inspector-protocol-version -o $(GENSOURCES_WEBCORE)/InspectorProtocolVersion.h $(WebCore)/inspector/Inspector.json
DerivedSources/WebCore/InspectorBackendDispatcher.cpp: $(WebCore)/inspector/Inspector.json $(WebCore)/inspector/CodeGeneratorInspector.py
- $(AM_V_GEN)$(PYTHON) $(WebCore)/inspector/CodeGeneratorInspector.py $< --output_h_dir $(GENSOURCES_WEBCORE) --output_cpp_dir $(GENSOURCES_WEBCORE) --defines "LANGUAGE_JAVASCRIPT=1 $(FEATURE_DEFINES)"
+ $(AM_V_GEN)$(PYTHON) $(WebCore)/inspector/CodeGeneratorInspector.py $< --output_h_dir $(GENSOURCES_WEBCORE) --output_cpp_dir $(GENSOURCES_WEBCORE)
+DerivedSources/WebCore/InspectorTypeBuilder.h: DerivedSources/WebCore/InspectorTypeBuilder.cpp
+DerivedSources/WebCore/InspectorTypeBuilder.cpp: DerivedSources/WebCore/InspectorFrontend.h
DerivedSources/WebCore/InspectorFrontend.h: DerivedSources/WebCore/InspectorFrontend.cpp
DerivedSources/WebCore/InspectorFrontend.cpp: DerivedSources/WebCore/InspectorBackendStub.js
DerivedSources/WebCore/InspectorBackendStub.js: DerivedSources/WebCore/InspectorBackendDispatcher.h
Modified: trunk/Source/WebCore/GNUmakefile.list.am (105742 => 105743)
--- trunk/Source/WebCore/GNUmakefile.list.am 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/GNUmakefile.list.am 2012-01-24 17:46:09 UTC (rev 105743)
@@ -27,6 +27,8 @@
DerivedSources/WebCore/InspectorBackendDispatcher.h \
DerivedSources/WebCore/InspectorFrontend.cpp \
DerivedSources/WebCore/InspectorFrontend.h \
+ DerivedSources/WebCore/InspectorTypeBuilder.cpp \
+ DerivedSources/WebCore/InspectorTypeBuilder.h \
DerivedSources/WebCore/InspectorProtocolVersion.h \
DerivedSources/WebCore/JSAbstractWorker.cpp \
DerivedSources/WebCore/JSAbstractWorker.h \
Modified: trunk/Source/WebCore/WebCore.gyp/WebCore.gyp (105742 => 105743)
--- trunk/Source/WebCore/WebCore.gyp/WebCore.gyp 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/WebCore.gyp/WebCore.gyp 2012-01-24 17:46:09 UTC (rev 105743)
@@ -378,6 +378,8 @@
'<(SHARED_INTERMEDIATE_DIR)/webkit/InspectorBackendDispatcher.h',
'<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorFrontend.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/InspectorFrontend.h',
+ '<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorTypeBuilder.cpp',
+ '<(SHARED_INTERMEDIATE_DIR)/webkit/InspectorTypeBuilder.h',
'<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorBackendStub.js',
],
'variables': {
@@ -389,7 +391,6 @@
'<@(_inputs)',
'--output_h_dir', '<(SHARED_INTERMEDIATE_DIR)/webkit',
'--output_cpp_dir', '<(SHARED_INTERMEDIATE_DIR)/webcore',
- '--defines', '<(feature_defines) LANGUAGE_JAVASCRIPT',
],
'message': 'Generating Inspector protocol sources from Inspector.json',
},
@@ -1129,6 +1130,7 @@
# Additional .cpp files from the webcore_inspector_sources list.
'<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorFrontend.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorBackendDispatcher.cpp',
+ '<(SHARED_INTERMEDIATE_DIR)/webcore/InspectorTypeBuilder.cpp',
],
'conditions': [
['inside_chromium_build==1 and OS=="win" and component=="shared_library"', {
Modified: trunk/Source/WebCore/WebCore.gypi (105742 => 105743)
--- trunk/Source/WebCore/WebCore.gypi 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/WebCore.gypi 2012-01-24 17:46:09 UTC (rev 105743)
@@ -6891,6 +6891,8 @@
'<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorBackendStub.js',
'<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorFrontend.cpp',
'<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorFrontend.h',
+ '<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorTypeBuilder.cpp',
+ '<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorTypeBuilder.h',
'<(PRODUCT_DIR)/DerivedSources/WebCore/InspectorProtocolVersion.h',
'<(PRODUCT_DIR)/DerivedSources/WebCore/JSAbstractView.cpp',
'<(PRODUCT_DIR)/DerivedSources/WebCore/JSAbstractView.h',
Modified: trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj (105742 => 105743)
--- trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj 2012-01-24 17:46:09 UTC (rev 105743)
@@ -610,6 +610,14 @@
>
</File>
<File
+ RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\InspectorTypeBuilder.cpp"
+ >
+ </File>
+ <File
+ RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\InspectorTypeBuilder.h"
+ >
+ </File>
+ <File
RelativePath="$(ConfigurationBuildDir)\obj\WebCore\DerivedSources\JSAbstractWorker.cpp"
>
<FileConfiguration
Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (105742 => 105743)
--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2012-01-24 17:46:09 UTC (rev 105743)
@@ -1572,6 +1572,7 @@
53C8298E13D8D92700DE2DEB /* RenderFlexibleBox.h in Headers */ = {isa = PBXBuildFile; fileRef = 53C8298C13D8D92700DE2DEB /* RenderFlexibleBox.h */; };
550A0BC9085F6039007353D6 /* QualifiedName.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 550A0BC7085F6039007353D6 /* QualifiedName.cpp */; };
550A0BCA085F6039007353D6 /* QualifiedName.h in Headers */ = {isa = PBXBuildFile; fileRef = 550A0BC8085F6039007353D6 /* QualifiedName.h */; settings = {ATTRIBUTES = (Private, ); }; };
+ 573D134714CE39FF0057ABCA /* InspectorTypeBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 573D134514CE39FF0057ABCA /* InspectorTypeBuilder.cpp */; };
57B791A314C6A62900F202D1 /* ContentInclusionSelector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57B7919F14C6A62900F202D1 /* ContentInclusionSelector.cpp */; };
57B791A414C6A62900F202D1 /* ContentInclusionSelector.h in Headers */ = {isa = PBXBuildFile; fileRef = 57B791A014C6A62900F202D1 /* ContentInclusionSelector.h */; };
57B791A514C6A62900F202D1 /* ContentSelectorQuery.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57B791A114C6A62900F202D1 /* ContentSelectorQuery.cpp */; };
@@ -8406,6 +8407,8 @@
53C8298C13D8D92700DE2DEB /* RenderFlexibleBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderFlexibleBox.h; sourceTree = "<group>"; };
550A0BC7085F6039007353D6 /* QualifiedName.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = QualifiedName.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
550A0BC8085F6039007353D6 /* QualifiedName.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = QualifiedName.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
+ 573D134514CE39FF0057ABCA /* InspectorTypeBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorTypeBuilder.cpp; sourceTree = "<group>"; };
+ 573D134614CE39FF0057ABCA /* InspectorTypeBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorTypeBuilder.h; sourceTree = "<group>"; };
57B7919F14C6A62900F202D1 /* ContentInclusionSelector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContentInclusionSelector.cpp; sourceTree = "<group>"; };
57B791A014C6A62900F202D1 /* ContentInclusionSelector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentInclusionSelector.h; sourceTree = "<group>"; };
57B791A114C6A62900F202D1 /* ContentSelectorQuery.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContentSelectorQuery.cpp; sourceTree = "<group>"; };
@@ -13901,6 +13904,8 @@
1C5FAECA0DCFD8C900D58F78 /* Inspector */ = {
isa = PBXGroup;
children = (
+ 573D134514CE39FF0057ABCA /* InspectorTypeBuilder.cpp */,
+ 573D134614CE39FF0057ABCA /* InspectorTypeBuilder.h */,
7A563E5412DE32B000F4536D /* InjectedScriptSource.h */,
4F707A9711EF679400ACDA69 /* InspectorBackendDispatcher.cpp */,
4F707A9811EF679400ACDA69 /* InspectorBackendDispatcher.h */,
@@ -26981,6 +26986,7 @@
E1BE512D0CF6C512002EA959 /* XSLTUnicodeSort.cpp in Sources */,
977E2E0E12F0FC9C00C13379 /* XSSAuditor.cpp in Sources */,
FD537352137B651800008DCE /* ZeroPole.cpp in Sources */,
+ 573D134714CE39FF0057ABCA /* InspectorTypeBuilder.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Modified: trunk/Source/WebCore/inspector/CodeGeneratorInspector.py (105742 => 105743)
--- trunk/Source/WebCore/inspector/CodeGeneratorInspector.py 2012-01-24 16:59:09 UTC (rev 105742)
+++ trunk/Source/WebCore/inspector/CodeGeneratorInspector.py 2012-01-24 17:46:09 UTC (rev 105743)
@@ -57,8 +57,6 @@
cmdline_parser = optparse.OptionParser()
-# FIXME: get rid of this option once the system is stable.
-cmdline_parser.add_option("--defines")
cmdline_parser.add_option("--output_h_dir")
cmdline_parser.add_option("--output_cpp_dir")
@@ -75,42 +73,14 @@
raise Exception("Output .cpp directory must be specified")
except Exception, e:
sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % e)
- sys.stderr.write("Usage: <script> Inspector.json --output_h_dir <output_header_dir> --output_cpp_dir <output_cpp_dir> [--defines <defines string>]\n")
+ sys.stderr.write("Usage: <script> Inspector.json --output_h_dir <output_header_dir> --output_cpp_dir <output_cpp_dir>\n")
exit(1)
def dash_to_camelcase(word):
return ''.join(x.capitalize() or '-' for x in word.split('-'))
-def parse_defines(str):
- if not str:
- return {}
- items = str.split()
- result = {}
- for item in items:
- if item[0] == '"' and item[-1] == '"' and len(item) >= 2:
- item = item[1:-1]
- eq_pos = item.find("=")
- if eq_pos == -1:
- key = item
- value = True
- else:
- key = item[:eq_pos]
- value_str = item[eq_pos + 1:]
- if value_str == "0":
- value = False
- elif value_str == "1":
- value = True
- else:
- # Should we support other values?
- raise Exception("Unrecognized define value: '%s' (key: '%s')" % (value_str, key))
- result[key] = value
- return result
-
-defines_map = parse_defines(arg_options.defines)
-
-
class Capitalizer:
@staticmethod
def lower_camel_case_to_upper(str):
@@ -1241,6 +1211,7 @@
"""#ifndef InspectorFrontend_h
#define InspectorFrontend_h
+#include "InspectorTypeBuilder.h"
#include "InspectorValues.h"
#include <PlatformString.h>
#include <wtf/PassRefPtr.h>
@@ -1289,6 +1260,7 @@
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
#include <wtf/text/WTFString.h>
+#include "InspectorTypeBuilder.h"
namespace WebCore {
@@ -1711,6 +1683,8 @@
$enumConstantValues};
String getEnumConstantValue(int code) {
+ // Test variable from generated sources, declared in InspectorTypeBuilder.h and defined in InspectorTypeBuilder.cpp
+ ASSERT(typeBuilderTestVariable);
return enum_constant_values[code];
}
@@ -1721,6 +1695,43 @@
#endif // ENABLE(INSPECTOR)
""")
+ typebuilder_h = string.Template(file_header_ +
+"""
+#ifndef InspectorBackendDispatcher_h
+#define InspectorBackendDispatcher_h
+
+namespace WebCore {
+
+// FIXME: move here TypeBuilder namespace from InspectorFrontend.h
+
+// FIXME: Used to test that we don't miss .cpp file. Remove once tested.
+extern bool typeBuilderTestVariable;
+
+} // namespace WebCore
+#endif // !defined(InspectorBackendDispatcher_h)
+
+""")
+
+ typebuilder_cpp = string.Template(file_header_ +
+"""
+
+#include "config.h"
+#if ENABLE(INSPECTOR)
+
+#include "InspectorTypeBuilder.h"
+
+namespace WebCore {
+
+// FIXME: move here TypeBuilder namespace from InspectorFrontend.cpp
+
+// FIXME: Used to test that we don't miss .cpp file. Remove once tested.
+bool typeBuilderTestVariable = true;
+
+} // namespace WebCore
+
+#endif // ENABLE(INSPECTOR)
+""")
+
backend_js = string.Template(file_header_ +
"""
@@ -2168,15 +2179,12 @@
frontend_h_file = open(output_header_dirname + "/InspectorFrontend.h", "w")
frontend_cpp_file = open(output_cpp_dirname + "/InspectorFrontend.cpp", "w")
+typebuilder_h_file = open(output_header_dirname + "/InspectorTypeBuilder.h", "w")
+typebuilder_cpp_file = open(output_cpp_dirname + "/InspectorTypeBuilder.cpp", "w")
+
backend_js_file = open(output_cpp_dirname + "/InspectorBackendStub.js", "w")
-frontend_h_file.write(Templates.frontend_h.substitute(None,
- fieldDeclarations=join(Generator.frontend_class_field_lines, ""),
- domainClassList=join(Generator.frontend_domain_class_lines, ""),
- typeBuilders=join(flatten_list(Generator.type_builder_fragments), ""),
- forwards=join(Generator.type_builder_forwards, "")))
-
backend_h_file.write(Templates.backend_h.substitute(None,
constructorInit=join(Generator.backend_constructor_init_list, "\n"),
setters=join(Generator.backend_setters_list, "\n"),
@@ -2185,17 +2193,27 @@
fieldDeclarations=join(Generator.backend_field_list, "\n"),
forwardDeclarations=join(Generator.backend_forward_list, "\n")))
-frontend_cpp_file.write(Templates.frontend_cpp.substitute(None,
- constructorInit=join(Generator.frontend_constructor_init_list, ""),
- methods=join(Generator.frontend_method_list, "\n"),
- enumConstantValues=EnumConstants.get_enum_constant_code()))
-
backend_cpp_file.write(Templates.backend_cpp.substitute(None,
methodNameDeclarations=join(Generator.backend_method_name_declaration_list, "\n"),
includes=join(Generator.backend_include_list, "\n"),
methods=join(Generator.backend_method_implementation_list, "\n"),
messageHandlers=join(Generator.method_handler_list, "\n")))
+frontend_h_file.write(Templates.frontend_h.substitute(None,
+ fieldDeclarations=join(Generator.frontend_class_field_lines, ""),
+ domainClassList=join(Generator.frontend_domain_class_lines, ""),
+ typeBuilders=join(flatten_list(Generator.type_builder_fragments), ""),
+ forwards=join(Generator.type_builder_forwards, "")))
+
+frontend_cpp_file.write(Templates.frontend_cpp.substitute(None,
+ constructorInit=join(Generator.frontend_constructor_init_list, ""),
+ methods=join(Generator.frontend_method_list, "\n"),
+ enumConstantValues=EnumConstants.get_enum_constant_code()))
+
+typebuilder_h_file.write(Templates.typebuilder_h.substitute(None))
+
+typebuilder_cpp_file.write(Templates.typebuilder_cpp.substitute(None))
+
backend_js_file.write(Templates.backend_js.substitute(None,
domainInitializers=join(Generator.backend_js_domain_initializer_list, "")))