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

Side by Side Diff: Source/bindings/templates/interface_base.cpp

Issue 1212123003: Componentization: make symbols visible. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 5 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 unified diff | Download patch
OLDNEW
1 {% include 'copyright_block.txt' %} 1 {% include 'copyright_block.txt' %}
2 #include "config.h" 2 #include "config.h"
3 {% filter conditional(conditional_string) %} 3 {% filter conditional(conditional_string) %}
4 #include "{{v8_class_or_partial}}.h" 4 #include "{{v8_class_or_partial}}.h"
5 5
6 {% for filename in cpp_includes if filename != '%s.h' % cpp_class_or_partial %} 6 {% for filename in cpp_includes if filename != '%s.h' % cpp_class_or_partial %}
7 #include "{{filename}}" 7 #include "{{filename}}"
8 {% endfor %} 8 {% endfor %}
9 9
10 namespace blink { 10 namespace blink {
11 {% set to_active_dom_object = '%s::toActiveDOMObject' % v8_class 11 {% set to_active_dom_object = '%s::toActiveDOMObject' % v8_class
12 if is_active_dom_object else '0' %} 12 if is_active_dom_object else '0' %}
13 {% set visit_dom_wrapper = '%s::visitDOMWrapper' % v8_class 13 {% set visit_dom_wrapper = '%s::visitDOMWrapper' % v8_class
14 if has_visit_dom_wrapper else '0' %} 14 if has_visit_dom_wrapper else '0' %}
15 {% set parent_wrapper_type_info = '&V8%s::wrapperTypeInfo' % parent_interface 15 {% set parent_wrapper_type_info = '&V8%s::wrapperTypeInfo' % parent_interface
16 if parent_interface else '0' %} 16 if parent_interface else '0' %}
17 {% set wrapper_type_prototype = 'WrapperTypeExceptionPrototype' if is_exception else 17 {% set wrapper_type_prototype = 'WrapperTypeExceptionPrototype' if is_exception else
18 'WrapperTypeObjectPrototype' %} 18 'WrapperTypeObjectPrototype' %}
19 {% set dom_template = '%s::domTemplate' % v8_class if not is_array_buffer_or_vie w else '0' %} 19 {% set dom_template = '%s::domTemplate' % v8_class if not is_array_buffer_or_vie w else '0' %}
20 20
21 {% set wrapper_type_info_const = '' if has_partial_interface else 'const ' %} 21 {% set wrapper_type_info_const = '' if has_partial_interface else 'const ' %}
22 {% if not is_partial %} 22 {% if not is_partial %}
23 // Suppress warning: global constructors, because struct WrapperTypeInfo is triv ial
24 // and does not depend on another global objects.
25 #if defined(COMPONENT_BUILD) && defined(WIN32) && COMPILER(CLANG)
26 #pragma clang diagnostic push
27 #pragma clang diagnostic ignored "-Wglobal-constructors"
28 #endif
23 {{wrapper_type_info_const}}WrapperTypeInfo {{v8_class}}::wrapperTypeInfo = { gin ::kEmbedderBlink, {{dom_template}}, {{v8_class}}::refObject, {{v8_class}}::deref Object, {{v8_class}}::trace, {{to_active_dom_object}}, {{visit_dom_wrapper}}, {{ v8_class}}::preparePrototypeObject, {{v8_class}}::installConditionallyEnabledPro perties, "{{interface_name}}", {{parent_wrapper_type_info}}, WrapperTypeInfo::{{ wrapper_type_prototype}}, WrapperTypeInfo::{{wrapper_class_id}}, WrapperTypeInfo ::{{event_target_inheritance}}, WrapperTypeInfo::{{lifetime}}, WrapperTypeInfo:: {{gc_type}} }; 29 {{wrapper_type_info_const}}WrapperTypeInfo {{v8_class}}::wrapperTypeInfo = { gin ::kEmbedderBlink, {{dom_template}}, {{v8_class}}::refObject, {{v8_class}}::deref Object, {{v8_class}}::trace, {{to_active_dom_object}}, {{visit_dom_wrapper}}, {{ v8_class}}::preparePrototypeObject, {{v8_class}}::installConditionallyEnabledPro perties, "{{interface_name}}", {{parent_wrapper_type_info}}, WrapperTypeInfo::{{ wrapper_type_prototype}}, WrapperTypeInfo::{{wrapper_class_id}}, WrapperTypeInfo ::{{event_target_inheritance}}, WrapperTypeInfo::{{lifetime}}, WrapperTypeInfo:: {{gc_type}} };
30 #if defined(COMPONENT_BUILD) && defined(WIN32) && COMPILER(CLANG)
31 #pragma clang diagnostic pop
32 #endif
24 33
25 // This static member must be declared by DEFINE_WRAPPERTYPEINFO in {{cpp_class} }.h. 34 // This static member must be declared by DEFINE_WRAPPERTYPEINFO in {{cpp_class} }.h.
26 // For details, see the comment of DEFINE_WRAPPERTYPEINFO in 35 // For details, see the comment of DEFINE_WRAPPERTYPEINFO in
27 // bindings/core/v8/ScriptWrappable.h. 36 // bindings/core/v8/ScriptWrappable.h.
28 {% if not is_typed_array_type %} 37 {% if not is_typed_array_type %}
29 const WrapperTypeInfo& {{cpp_class}}::s_wrapperTypeInfo = {{v8_class}}::wrapperT ypeInfo; 38 const WrapperTypeInfo& {{cpp_class}}::s_wrapperTypeInfo = {{v8_class}}::wrapperT ypeInfo;
30 {% endif %} 39 {% endif %}
31 40
32 {% endif %} 41 {% endif %}
33 {% if not is_array_buffer_or_view %} 42 {% if not is_array_buffer_or_view %}
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 {% block named_property_enumerator %}{% endblock %} 213 {% block named_property_enumerator %}{% endblock %}
205 {% block named_property_enumerator_callback %}{% endblock %} 214 {% block named_property_enumerator_callback %}{% endblock %}
206 } // namespace {{cpp_class_or_partial}}V8Internal 215 } // namespace {{cpp_class_or_partial}}V8Internal
207 216
208 {% block visit_dom_wrapper %}{% endblock %} 217 {% block visit_dom_wrapper %}{% endblock %}
209 {% block shadow_attributes %}{% endblock %} 218 {% block shadow_attributes %}{% endblock %}
210 {##############################################################################} 219 {##############################################################################}
211 {% block install_attributes %} 220 {% block install_attributes %}
212 {% from 'attributes.cpp' import attribute_configuration with context %} 221 {% from 'attributes.cpp' import attribute_configuration with context %}
213 {% if has_attribute_configuration %} 222 {% if has_attribute_configuration %}
223 // Suppress warning: global constructors, because AttributeConfiguration is triv ial
224 // and does not depend on another global objects.
225 #if defined(COMPONENT_BUILD) && defined(WIN32) && COMPILER(CLANG)
226 #pragma clang diagnostic push
227 #pragma clang diagnostic ignored "-Wglobal-constructors"
228 #endif
214 static const V8DOMConfiguration::AttributeConfiguration {{v8_class}}Attributes[] = { 229 static const V8DOMConfiguration::AttributeConfiguration {{v8_class}}Attributes[] = {
215 {% for attribute in attributes 230 {% for attribute in attributes
216 if not (attribute.is_expose_js_accessors or 231 if not (attribute.is_expose_js_accessors or
217 attribute.is_static or 232 attribute.is_static or
218 attribute.runtime_enabled_function or 233 attribute.runtime_enabled_function or
219 attribute.exposed_test or 234 attribute.exposed_test or
220 (interface_name == 'Window' and attribute.is_unforgeable)) 235 (interface_name == 'Window' and attribute.is_unforgeable))
221 and attribute.should_be_exposed_to_script %} 236 and attribute.should_be_exposed_to_script %}
222 {% filter conditional(attribute.conditional_string) %} 237 {% filter conditional(attribute.conditional_string) %}
223 {{attribute_configuration(attribute)}}, 238 {{attribute_configuration(attribute)}},
224 {% endfilter %} 239 {% endfilter %}
225 {% endfor %} 240 {% endfor %}
226 }; 241 };
242 #if defined(COMPONENT_BUILD) && defined(WIN32) && COMPILER(CLANG)
243 #pragma clang diagnostic pop
244 #endif
227 245
228 {% endif %} 246 {% endif %}
229 {% endblock %} 247 {% endblock %}
230 {##############################################################################} 248 {##############################################################################}
231 {% block install_accessors %} 249 {% block install_accessors %}
232 {% from 'attributes.cpp' import attribute_configuration with context %} 250 {% from 'attributes.cpp' import attribute_configuration with context %}
233 {% if has_accessor_configuration %} 251 {% if has_accessor_configuration %}
234 static const V8DOMConfiguration::AccessorConfiguration {{v8_class}}Accessors[] = { 252 static const V8DOMConfiguration::AccessorConfiguration {{v8_class}}Accessors[] = {
235 {% for attribute in attributes 253 {% for attribute in attributes
236 if (attribute.is_expose_js_accessors and 254 if (attribute.is_expose_js_accessors and
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 {% endfor %} 511 {% endfor %}
494 {% for attribute in attributes if attribute.is_implemented_in_private_script %} 512 {% for attribute in attributes if attribute.is_implemented_in_private_script %}
495 {{attribute_getter_implemented_in_private_script(attribute)}} 513 {{attribute_getter_implemented_in_private_script(attribute)}}
496 {% if attribute.has_setter %} 514 {% if attribute.has_setter %}
497 {{attribute_setter_implemented_in_private_script(attribute)}} 515 {{attribute_setter_implemented_in_private_script(attribute)}}
498 {% endif %} 516 {% endif %}
499 {% endfor %} 517 {% endfor %}
500 {% block partial_interface %}{% endblock %} 518 {% block partial_interface %}{% endblock %}
501 } // namespace blink 519 } // namespace blink
502 {% endfilter %} 520 {% endfilter %}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698