Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(190)

Unified Diff: Source/bindings/templates/partial_interface.cpp

Issue 618373003: [bindings] partial interfaces should not violate componentization (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/bindings/templates/partial_interface.cpp
diff --git a/Source/bindings/templates/partial_interface.cpp b/Source/bindings/templates/partial_interface.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..d77b5b807dbeb479324244a5d3edb764d9d635cc
--- /dev/null
+++ b/Source/bindings/templates/partial_interface.cpp
@@ -0,0 +1,53 @@
+{% extends 'interface_base.cpp' %}
+
+{% block indexed_property_getter %}{% endblock %}
+{% block indexed_property_getter_callback %}{% endblock %}
+{% block indexed_property_setter %}{% endblock %}
+{% block indexed_property_setter_callback %}{% endblock %}
+{% block indexed_property_deleter %}{% endblock %}
+{% block indexed_property_deleter_callback %}{% endblock %}
+{% block named_property_getter %}{% endblock %}
+{% block named_property_getter_callback %}{% endblock %}
+{% block named_property_setter %}{% endblock %}
+{% block named_property_setter_callback %}{% endblock %}
+{% block named_property_query %}{% endblock %}
+{% block named_property_query_callback %}{% endblock %}
+{% block named_property_deleter %}{% endblock %}
+{% block named_property_deleter_callback %}{% endblock %}
+{% block named_property_enumerator %}{% endblock %}
+{% block named_property_enumerator_callback %}{% endblock %}
+{% block origin_safe_method_setter %}{% endblock %}
+{% block named_constructor %}{% endblock %}
+{% block overloaded_constructor %}{% endblock %}
+{% block event_constructor %}{% endblock %}
+{% block visit_dom_wrapper %}{% endblock %}
+{% block shadow_attributes %}{% endblock %}
+{% block initialize_event %}{% endblock %}
+{% block constructor_callback %}{% endblock %}
+{% block configure_shadow_object_template %}{% endblock %}
+{% block get_dom_template %}{% endblock %}
+{% block has_instance %}{% endblock %}
+{% block to_native_with_type_check %}{% endblock %}
+{% block to_active_dom_object %}{% endblock %}
+{% block to_event_target %}{% endblock %}
+{% block get_shadow_object_template %}{% endblock %}
+{% block wrap %}{% endblock %}
+{% block create_wrapper %}{% endblock %}
+{% block deref_object_and_to_v8_no_inline %}{% endblock %}
+
+{##############################################################################}
+{% block partial_interface %}
+void {{actual_v8_class}}::initialize()
+{
+ // Should be invoked from initModules.
+ {{v8_class}}::updateWrapperTypeInfo(
+ &{{actual_v8_class}}::install{{v8_class}}Template,
+ &{{actual_v8_class}}::installConditionallyEnabledMethods);
+ {% for method in methods %}
+ {% if method.overloads and method.overloads.has_partial_overloads %}
+ {{v8_class}}::register{{method.name | blink_capitalize}}MethodForPartialInterface(&{{actual_cpp_class}}V8Internal::{{method.name}}Method);
+ {% endif %}
+ {% endfor %}
+}
+
+{% endblock %}

Powered by Google App Engine
This is Rietveld 408576698