Diff
Modified: trunk/ChangeLog (176918 => 176919)
--- trunk/ChangeLog 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/ChangeLog 2014-12-07 10:02:52 UTC (rev 176919)
@@ -1,3 +1,16 @@
+2014-12-07 Carlos Garcia Campos <[email protected]>
+
+ [GTK] Missing API detected in GObject DOM bindings after r176630
+ https://bugs.webkit.org/show_bug.cgi?id=139201
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Change GENERATE_BINDINGS macro to receive a list of optional
+ additional dependencies, so that we can add more dependecies
+ without having to change the macro.
+
+ * Source/cmake/WebKitMacros.cmake:
+
2014-12-05 Simon Fraser <[email protected]>
Programmatic scrolling and content changes are not always synchronized
Modified: trunk/Source/WebCore/CMakeLists.txt (176918 => 176919)
--- trunk/Source/WebCore/CMakeLists.txt 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/WebCore/CMakeLists.txt 2014-12-07 10:02:52 UTC (rev 176919)
@@ -3385,6 +3385,13 @@
--sharedWorkerGlobalScopeConstructorsFile ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE} --dedicatedWorkerGlobalScopeConstructorsFile ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
VERBATIM)
+set(ADDITIONAL_BINDINGS_DEPENDENCIES
+ ${WINDOW_CONSTRUCTORS_FILE}
+ ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+)
+
GENERATE_BINDINGS(WebCore_SOURCES
"${WebCore_IDL_FILES}"
"${WEBCORE_DIR}"
@@ -3393,10 +3400,7 @@
${DERIVED_SOURCES_WEBCORE_DIR} JS JS cpp
${IDL_ATTRIBUTES_FILE}
${SUPPLEMENTAL_DEPENDENCY_FILE}
- ${WINDOW_CONSTRUCTORS_FILE}
- ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE})
+ ${ADDITIONAL_BINDINGS_DEPENDENCIES})
GENERATE_BINDINGS(WebCoreTestSupport_SOURCES
"${WebCoreTestSupport_IDL_FILES}"
@@ -3406,10 +3410,7 @@
${DERIVED_SOURCES_WEBCORE_DIR} JS JS cpp
${IDL_ATTRIBUTES_FILE}
${SUPPLEMENTAL_DEPENDENCY_FILE}
- ${WINDOW_CONSTRUCTORS_FILE}
- ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE})
+ ${ADDITIONAL_BINDINGS_DEPENDENCIES})
ADD_SOURCE_WEBCORE_DERIVED_DEPENDENCIES(${WEBCORE_DIR}/html/HTMLTreeBuilder.cpp MathMLNames.cpp)
Modified: trunk/Source/WebCore/ChangeLog (176918 => 176919)
--- trunk/Source/WebCore/ChangeLog 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/WebCore/ChangeLog 2014-12-07 10:02:52 UTC (rev 176919)
@@ -1,3 +1,26 @@
+2014-12-07 Carlos Garcia Campos <[email protected]>
+
+ [GTK] Missing API detected in GObject DOM bindings after r176630
+ https://bugs.webkit.org/show_bug.cgi?id=139201
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Bring back WebKitDOMDeprecated and add custom versions of the
+ removed symbols as deprecated in favor of the new ones. Also add
+ the new ones as stable API.
+
+ * CMakeLists.txt: Pass a list of additional dependencies to GENERATE_BINDINGS.
+ * PlatformGTK.cmake: Ditto.
+ * PlatformMac.cmake: Ditto.
+ * bindings/gobject/WebKitDOMDeprecated.cpp: Added.
+ (webkit_dom_html_element_get_inner_html):
+ (webkit_dom_html_element_set_inner_html):
+ (webkit_dom_html_element_get_outer_html):
+ (webkit_dom_html_element_set_outer_html):
+ * bindings/gobject/WebKitDOMDeprecated.h: Added.
+ * bindings/gobject/WebKitDOMDeprecated.symbols: Added.
+ * bindings/gobject/webkitdom.symbols:
+
2014-12-06 Csaba Osztrogonác <[email protected]>
URTBF after r176915.
Modified: trunk/Source/WebCore/PlatformGTK.cmake (176918 => 176919)
--- trunk/Source/WebCore/PlatformGTK.cmake 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/WebCore/PlatformGTK.cmake 2014-12-07 10:02:52 UTC (rev 176919)
@@ -465,6 +465,7 @@
bindings/gobject/GObjectNodeFilterCondition.cpp
bindings/gobject/GObjectXPathNSResolver.cpp
bindings/gobject/WebKitDOMCustom.cpp
+ bindings/gobject/WebKitDOMDeprecated.cpp
bindings/gobject/WebKitDOMEventTarget.cpp
bindings/gobject/WebKitDOMHTMLPrivate.cpp
bindings/gobject/WebKitDOMNodeFilter.cpp
@@ -680,13 +681,14 @@
)
endif ()
-set(GObjectDOMBindings_STATIC_CLASS_LIST Custom EventTarget NodeFilter Object XPathNSResolver)
+set(GObjectDOMBindings_STATIC_CLASS_LIST Custom Deprecated EventTarget NodeFilter Object XPathNSResolver)
set(GObjectDOMBindingsStable_CLASS_LIST ${GObjectDOMBindings_STATIC_CLASS_LIST})
set(GObjectDOMBindingsStable_INSTALLED_HEADERS
${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/webkitdomdefines.h
${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/webkitdom.h
${WEBCORE_DIR}/bindings/gobject/WebKitDOMCustom.h
+ ${WEBCORE_DIR}/bindings/gobject/WebKitDOMDeprecated.h
${WEBCORE_DIR}/bindings/gobject/WebKitDOMEventTarget.h
${WEBCORE_DIR}/bindings/gobject/WebKitDOMNodeFilter.h
${WEBCORE_DIR}/bindings/gobject/WebKitDOMObject.h
@@ -752,6 +754,13 @@
)
set(GObjectDOMBindings_IDL_FILES ${GObjectDOMBindingsStable_IDL_FILES} ${GObjectDOMBindingsUnstable_IDL_FILES})
+set(ADDITIONAL_BINDINGS_DEPENDENCIES
+ ${WEBCORE_DIR}/bindings/gobject/webkitdom.symbols
+ ${WINDOW_CONSTRUCTORS_FILE}
+ ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+)
GENERATE_BINDINGS(GObjectDOMBindings_SOURCES
"${GObjectDOMBindings_IDL_FILES}"
"${WEBCORE_DIR}"
@@ -761,10 +770,7 @@
WebKitDOM GObject cpp
${IDL_ATTRIBUTES_FILE}
${SUPPLEMENTAL_DEPENDENCY_FILE}
- ${WINDOW_CONSTRUCTORS_FILE}
- ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE})
+ ${ADDITIONAL_BINDINGS_DEPENDENCIES})
add_definitions(-DBUILDING_WEBKIT)
add_definitions(-DWEBKIT_DOM_USE_UNSTABLE_API)
Modified: trunk/Source/WebCore/PlatformMac.cmake (176918 => 176919)
--- trunk/Source/WebCore/PlatformMac.cmake 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/WebCore/PlatformMac.cmake 2014-12-07 10:02:52 UTC (rev 176919)
@@ -221,6 +221,12 @@
WEBKIT_CREATE_FORWARDING_HEADERS(WebCore DIRECTORIES ${WebCore_FORWARDING_HEADERS_DIRECTORIES} FILES ${WebCore_FORWARDING_HEADERS_FILES})
set(FEATURE_DEFINES_OBJECTIVE_C "LANGUAGE_OBJECTIVE_C=1 ${FEATURE_DEFINES_WITH_SPACE_SEPARATOR}")
+set(ADDITIONAL_BINDINGS_DEPENDENCIES
+ ${WINDOW_CONSTRUCTORS_FILE}
+ ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+ ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
+)
GENERATE_BINDINGS(WebCore_SOURCES
"${WebCore_NON_SVG_IDL_FILES}"
"${WEBCORE_DIR}"
@@ -229,7 +235,4 @@
${DERIVED_SOURCES_WEBCORE_DIR} DOM ObjC mm
${IDL_ATTRIBUTES_FILE}
${SUPPLEMENTAL_DEPENDENCY_FILE}
- ${WINDOW_CONSTRUCTORS_FILE}
- ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${SHAREDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
- ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE})
+ ${ADDITIONAL_BINDINGS_DEPENDENCIES})
Added: trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.cpp (0 => 176919)
--- trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.cpp (rev 0)
+++ trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.cpp 2014-12-07 10:02:52 UTC (rev 176919)
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2014 Igalia S.L.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "config.h"
+#include "WebKitDOMDeprecated.h"
+
+#include "WebKitDOMHTMLElement.h"
+
+gchar* webkit_dom_html_element_get_inner_html(WebKitDOMHTMLElement* self)
+{
+ g_return_val_if_fail(WEBKIT_DOM_IS_HTML_ELEMENT(self), nullptr);
+ return webkit_dom_element_get_inner_html(WEBKIT_DOM_ELEMENT(self));
+}
+
+void webkit_dom_html_element_set_inner_html(WebKitDOMHTMLElement* self, const gchar* contents, GError** error)
+{
+ g_return_if_fail(WEBKIT_DOM_IS_HTML_ELEMENT(self));
+ webkit_dom_element_set_inner_html(WEBKIT_DOM_ELEMENT(self), contents, error);
+}
+
+gchar* webkit_dom_html_element_get_outer_html(WebKitDOMHTMLElement* self)
+{
+ g_return_val_if_fail(WEBKIT_DOM_IS_HTML_ELEMENT(self), nullptr);
+ return webkit_dom_element_get_outer_html(WEBKIT_DOM_ELEMENT(self));
+}
+
+void webkit_dom_html_element_set_outer_html(WebKitDOMHTMLElement* self, const gchar* contents, GError** error)
+{
+ g_return_if_fail(WEBKIT_DOM_IS_HTML_ELEMENT(self));
+ webkit_dom_element_set_outer_html(WEBKIT_DOM_ELEMENT(self), contents, error);
+}
Added: trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.h (0 => 176919)
--- trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.h (rev 0)
+++ trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.h 2014-12-07 10:02:52 UTC (rev 176919)
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2014 Igalia S.L.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef WebKitDOMDeprecated_h
+#define WebKitDOMDeprecated_h
+
+#if !defined(WEBKIT_DISABLE_DEPRECATED)
+
+#include <glib.h>
+#include <webkitdom/webkitdomdefines.h>
+
+G_BEGIN_DECLS
+
+/**
+ * webkit_dom_html_element_get_inner_html:
+ * @self: a #WebKitDOMHTMLElement
+ *
+ * Returns: a #gchar
+ *
+ * Deprecated: 2.8: Use webkit_dom_element_get_inner_html() instead.
+ */
+WEBKIT_DEPRECATED_FOR(webkit_dom_element_get_inner_html) gchar*
+webkit_dom_html_element_get_inner_html(WebKitDOMHTMLElement* self);
+
+/**
+ * webkit_dom_html_element_set_inner_html:
+ * @self: a #WebKitDOMHTMLElement
+ * @contents: a #gchar with contents to set
+ * @error: a #GError or %NULL
+ *
+ * Deprecated: 2.8: Use webkit_dom_element_set_inner_html() instead.
+ */
+WEBKIT_DEPRECATED_FOR(webkit_dom_element_set_inner_html) void
+webkit_dom_html_element_set_inner_html(WebKitDOMHTMLElement* self, const gchar* contents, GError** error);
+
+/**
+ * webkit_dom_html_element_get_outer_html:
+ * @self: a #WebKitDOMHTMLElement
+ *
+ * Returns: a #gchar
+ *
+ * Deprecated: 2.8: Use webkit_dom_element_get_outer_html() instead.
+ */
+WEBKIT_DEPRECATED_FOR(webkit_dom_element_get_outer_html) gchar*
+webkit_dom_html_element_get_outer_html(WebKitDOMHTMLElement* self);
+
+/**
+ * webkit_dom_html_element_set_outer_html:
+ * @self: a #WebKitDOMHTMLElement
+ * @contents: a #gchar with contents to set
+ * @error: a #GError or %NULL
+ *
+ * Deprecated: 2.8: Use webkit_dom_element_set_outer_html() instead.
+ */
+WEBKIT_DEPRECATED_FOR(webkit_dom_element_set_outer_html) void
+webkit_dom_html_element_set_outer_html(WebKitDOMHTMLElement* self, const gchar* contents, GError** error);
+
+G_END_DECLS
+
+#endif /* WEBKIT_DISABLE_DEPRECATED */
+
+#endif
Added: trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.symbols (0 => 176919)
--- trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.symbols (rev 0)
+++ trunk/Source/WebCore/bindings/gobject/WebKitDOMDeprecated.symbols 2014-12-07 10:02:52 UTC (rev 176919)
@@ -0,0 +1,4 @@
+void webkit_dom_html_element_set_inner_html(WebKitDOMHTMLElement*, const gchar*, GError**)
+gchar* webkit_dom_html_element_get_outer_html(WebKitDOMHTMLElement*)
+gchar* webkit_dom_html_element_get_inner_html(WebKitDOMHTMLElement*)
+void webkit_dom_html_element_set_outer_html(WebKitDOMHTMLElement*, const gchar*, GError**)
Modified: trunk/Source/WebCore/bindings/gobject/webkitdom.symbols (176918 => 176919)
--- trunk/Source/WebCore/bindings/gobject/webkitdom.symbols 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/WebCore/bindings/gobject/webkitdom.symbols 2014-12-07 10:02:52 UTC (rev 176919)
@@ -112,6 +112,10 @@
WebKitDOMCSSStyleDeclaration* webkit_dom_element_get_style(WebKitDOMElement*)
gchar* webkit_dom_element_get_class_name(WebKitDOMElement*)
void webkit_dom_element_set_class_name(WebKitDOMElement*, const gchar*)
+void webkit_dom_element_set_inner_html(WebKitDOMElement*, const gchar*, GError**)
+gchar* webkit_dom_element_get_inner_html(WebKitDOMElement*)
+void webkit_dom_element_set_outer_html(WebKitDOMElement*, const gchar*, GError**)
+gchar* webkit_dom_element_get_outer_html(WebKitDOMElement*)
gchar* webkit_dom_element_get_tag_name(WebKitDOMElement*)
WebKitDOMElement* webkit_dom_element_get_offset_parent(WebKitDOMElement*)
glong webkit_dom_element_get_scroll_left(WebKitDOMElement*)
Modified: trunk/Source/cmake/WebKitMacros.cmake (176918 => 176919)
--- trunk/Source/cmake/WebKitMacros.cmake 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Source/cmake/WebKitMacros.cmake 2014-12-07 10:02:52 UTC (rev 176919)
@@ -38,15 +38,12 @@
set(BINDING_GENERATOR ${WEBCORE_DIR}/bindings/scripts/generate-bindings.pl)
set(_args ${ARGN})
list(LENGTH _args _argCount)
- if (_argCount EQUAL 5)
+ if (_argCount GREATER 0)
list(GET _args 0 _supplemental_dependency_file)
if (_supplemental_dependency_file)
set(_supplemental_dependency --supplementalDependencyFile ${_supplemental_dependency_file})
endif ()
- list(GET _args 1 _window_constructors_file)
- list(GET _args 2 _workerglobalscope_constructors_file)
- list(GET _args 3 _sharedworkerglobalscope_constructors_file)
- list(GET _args 4 _dedicatedworkerglobalscope_constructors_file)
+ list(GET _args 1 _additional_dependencies)
endif ()
set(COMMON_GENERATOR_DEPENDENCIES
@@ -55,11 +52,8 @@
${SCRIPTS_BINDINGS}
${_supplemental_dependency_file}
${_idl_attributes_file}
- ${_window_constructors_file}
- ${_workerglobalscope_constructors_file}
- ${_sharedworkerglobalscope_constructors_file}
- ${_dedicatedworkerglobalscope_constructors_file}
)
+ list(APPEND COMMON_GENERATOR_DEPENDENCIES ${_additional_dependencies})
if (EXISTS ${WEBCORE_DIR}/bindings/scripts/CodeGenerator${_generator}.pm)
list(APPEND COMMON_GENERATOR_DEPENDENCIES ${WEBCORE_DIR}/bindings/scripts/CodeGenerator${_generator}.pm)
Modified: trunk/Tools/ChangeLog (176918 => 176919)
--- trunk/Tools/ChangeLog 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Tools/ChangeLog 2014-12-07 10:02:52 UTC (rev 176919)
@@ -1,3 +1,21 @@
+2014-12-07 Carlos Garcia Campos <[email protected]>
+
+ [GTK] Missing API detected in GObject DOM bindings after r176630
+ https://bugs.webkit.org/show_bug.cgi?id=139201
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Handle deprecated symbols again when generating the GObject DOM
+ bindings documentation.
+
+ * gtk/webkitdom.py:
+ (WebKitDOMDocGenerator):
+ (WebKitDOMDocGenerator.is_deprecated_symbol_file):
+ (WebKitDOMDocGenerator.generate):
+ (WebKitDOMDocGeneratorSections.__init__):
+ (WebKitDOMDocGeneratorSections._find_deprecated_symbols):
+ (WebKitDOMDocGeneratorSections.write_section):
+
2014-12-07 Csaba Osztrogonác <[email protected]>
[EFL][jhbuild] Fix libsoup build with clang
Modified: trunk/Tools/gtk/webkitdom.py (176918 => 176919)
--- trunk/Tools/gtk/webkitdom.py 2014-12-07 09:17:10 UTC (rev 176918)
+++ trunk/Tools/gtk/webkitdom.py 2014-12-07 10:02:52 UTC (rev 176919)
@@ -43,9 +43,15 @@
def write(self, string):
self._file_handle.write(string)
+ @staticmethod
+ def is_deprecated_symbol_file(file_path):
+ return 'WebKitDOMDeprecated' in file_path
+
def generate(self):
self.write_header()
for symbol_file in self._symbol_files:
+ if WebKitDOMDocGenerator.is_deprecated_symbol_file(symbol_file):
+ continue
self.write_section(symbol_file)
self.write_footer()
@@ -78,6 +84,10 @@
<title>Index</title>
<xi:include href="" /></xi:include>
</index>
+ <index id="api-index-deprecated" role="deprecated">
+ <title>Index of deprecated symbols</title>
+ <xi:include href="" /></xi:include>
+ </index>
<xi:include href="" /></xi:include>
</book>
@@ -94,6 +104,11 @@
self._function_re = re.compile('^.+ (.+)\((.+)\)$')
self._constant_re = re.compile('^[A-Z_]+$')
+ self.deprecated_symbols = {}
+ for symbol_file in symbol_files:
+ if WebKitDOMDocGenerator.is_deprecated_symbol_file(symbol_file):
+ self._deprecated_symbols = self._find_deprecated_symbols(symbol_file)
+
def _dom_class(self, class_name):
return self._dom_class_re.sub(r'\2', class_name)
@@ -114,6 +129,22 @@
return retval
+ def _find_deprecated_symbols(self, symbol_file):
+ retval = {}
+ f = open(symbol_file, 'r')
+ for line in f.readlines():
+ match = self._function_re.match(line)
+ if not match:
+ continue
+
+ function = match.group(1)
+ args = match.group(2).split(', ')
+ class_name = args[0].strip('*')
+ retval.setdefault(class_name, []).append(function)
+ f.close()
+
+ return retval
+
def _symbol_list(self, symbol_file):
retval = []
f = open(symbol_file, 'r')
@@ -141,6 +172,11 @@
self.write('%s\n' % class_name)
self.write('\n')
self.write('\n'.join(self._symbol_list(symbol_file)) + '\n')
+ try:
+ deprecated_functions = self._deprecated_symbols[class_name]
+ self.write('\n'.join(deprecated_functions) + '\n')
+ except KeyError:
+ pass
if not is_custom:
self.write('\n<SUBSECTION Standard>\n')
if is_interface: