mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
This was the last complicated piece of removing platform/heap, the rest should be trivial to delete after removing :trace overrides and mass-renaming the various WillBe types to their old versions. R=abarth@chromium.org Review URL: https://codereview.chromium.org/683593002
157 lines
6.7 KiB
C++
157 lines
6.7 KiB
C++
// Copyright 2014 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.
|
|
|
|
// This file has been auto-generated by {{code_generator}}. DO NOT MODIFY!
|
|
|
|
#include "config.h"
|
|
{% filter conditional(conditional_string) %}
|
|
#include "{{v8_class}}.h"
|
|
|
|
{% for filename in cpp_includes if filename != '%s.h' % v8_class %}
|
|
#include "{{filename}}"
|
|
{% endfor %}
|
|
|
|
namespace blink {
|
|
{% set to_active_dom_object = '%s::toActiveDOMObject' % v8_class
|
|
if is_active_dom_object else '0' %}
|
|
{% set to_event_target = '%s::toEventTarget' % v8_class
|
|
if is_event_target else '0' %}
|
|
{% set visit_dom_wrapper = '%s::visitDOMWrapper' % v8_class
|
|
if has_visit_dom_wrapper else '0' %}
|
|
{% set parent_wrapper_type_info = '&V8%s::wrapperTypeInfo' % parent_interface
|
|
if parent_interface else '0' %}
|
|
{% set wrapper_type_prototype = 'WrapperTypeExceptionPrototype' if is_exception else
|
|
'WrapperTypeObjectPrototype' %}
|
|
|
|
const WrapperTypeInfo {{v8_class}}::wrapperTypeInfo = { gin::kEmbedderBlink, {{v8_class}}::domTemplate, {{v8_class}}::refObject, {{v8_class}}::derefObject, {{to_active_dom_object}}, {{to_event_target}}, {{visit_dom_wrapper}}, {{v8_class}}::installConditionallyEnabledMethods, {{v8_class}}::installConditionallyEnabledProperties, {{parent_wrapper_type_info}}, WrapperTypeInfo::{{wrapper_type_prototype}}, WrapperTypeInfo::{{wrapper_class_id}}, WrapperTypeInfo::{{lifetime}} };
|
|
|
|
{% if is_script_wrappable %}
|
|
// This static member must be declared by DEFINE_WRAPPERTYPEINFO in {{cpp_class}}.h.
|
|
// For details, see the comment of DEFINE_WRAPPERTYPEINFO in
|
|
// bindings/core/v8/ScriptWrappable.h.
|
|
const WrapperTypeInfo& {{cpp_class}}::s_wrapperTypeInfo = {{v8_class}}::wrapperTypeInfo;
|
|
|
|
{% endif %}
|
|
namespace {{cpp_class}}V8Internal {
|
|
|
|
template <typename T> void V8_USE(T) { }
|
|
|
|
{# Attributes #}
|
|
{% from 'attributes.cpp' import constructor_getter_callback,
|
|
attribute_getter, attribute_getter_callback,
|
|
attribute_setter, attribute_setter_callback,
|
|
attribute_getter_implemented_in_private_script,
|
|
attribute_setter_implemented_in_private_script
|
|
with context %}
|
|
{% for attribute in attributes if not attribute.constructor_type %}
|
|
{% if attribute.should_be_exposed_to_script %}
|
|
{% for world_suffix in attribute.world_suffixes %}
|
|
{% if not attribute.has_custom_getter %}
|
|
{{attribute_getter(attribute, world_suffix)}}
|
|
{% endif %}
|
|
{{attribute_getter_callback(attribute, world_suffix)}}
|
|
{% if not attribute.is_read_only or attribute.put_forwards %}
|
|
{% if not attribute.has_custom_setter %}
|
|
{{attribute_setter(attribute, world_suffix)}}
|
|
{% endif %}
|
|
{{attribute_setter_callback(attribute, world_suffix)}}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% block constructor_getter %}{% endblock %}
|
|
{% for attribute in attributes if attribute.needs_constructor_getter_callback %}
|
|
{% for world_suffix in attribute.world_suffixes %}
|
|
{{constructor_getter_callback(attribute, world_suffix)}}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
{% block replaceable_attribute_setter_and_callback %}{% endblock %}
|
|
{% block security_check_functions %}{% endblock %}
|
|
{# Methods #}
|
|
{% from 'methods.cpp' import generate_method, overload_resolution_method,
|
|
method_callback, origin_safe_method_getter, generate_constructor,
|
|
method_implemented_in_private_script
|
|
with context %}
|
|
{% for method in methods %}
|
|
{% if method.should_be_exposed_to_script %}
|
|
{% for world_suffix in method.world_suffixes %}
|
|
{% if not method.is_custom %}
|
|
{{generate_method(method, world_suffix)}}
|
|
{% endif %}
|
|
{% if method.overloads %}
|
|
{{overload_resolution_method(method.overloads, world_suffix)}}
|
|
{% endif %}
|
|
{% if not method.overload_index or method.overloads %}
|
|
{# A single callback is generated for overloaded methods #}
|
|
{{method_callback(method, world_suffix)}}
|
|
{% endif %}
|
|
{% if method.is_do_not_check_security %}
|
|
{{origin_safe_method_getter(method, world_suffix)}}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% if iterator_method %}
|
|
{{generate_method(iterator_method)}}
|
|
{{method_callback(iterator_method)}}
|
|
{% endif %}
|
|
{% block origin_safe_method_setter %}{% endblock %}
|
|
{# Constructors #}
|
|
{% for constructor in constructors %}
|
|
{{generate_constructor(constructor)}}
|
|
{% endfor %}
|
|
{% block overloaded_constructor %}{% endblock %}
|
|
{% block event_constructor %}{% endblock %}
|
|
{# Special operations (methods) #}
|
|
{% 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 %}
|
|
} // namespace {{cpp_class}}V8Internal
|
|
|
|
{% block visit_dom_wrapper %}{% endblock %}
|
|
{% block shadow_attributes %}{% endblock %}
|
|
{% block install_attributes %}{% endblock %}
|
|
{% block install_accessors %}{% endblock %}
|
|
{% block install_methods %}{% endblock %}
|
|
{% block named_constructor %}{% endblock %}
|
|
{% block initialize_event %}{% endblock %}
|
|
{% block constructor_callback %}{% endblock %}
|
|
{% block configure_shadow_object_template %}{% endblock %}
|
|
{% block install_dom_template %}{% endblock %}
|
|
{% block get_dom_template %}{% endblock %}
|
|
{% block has_instance %}{% endblock %}
|
|
{% block to_native_with_type_check %}{% endblock %}
|
|
{% block install_conditional_attributes %}{% endblock %}
|
|
{% block install_conditional_methods %}{% 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 %}
|
|
{% for method in methods if method.is_implemented_in_private_script %}
|
|
{{method_implemented_in_private_script(method)}}
|
|
{% endfor %}
|
|
{% for attribute in attributes if attribute.is_implemented_in_private_script %}
|
|
{{attribute_getter_implemented_in_private_script(attribute)}}
|
|
{% if not attribute.is_read_only or attribute.put_forwards %}
|
|
{{attribute_setter_implemented_in_private_script(attribute)}}
|
|
{% endif %}
|
|
{% endfor %}
|
|
} // namespace blink
|
|
{% endfilter %}
|