| Index: Source/bindings/scripts/unstable/v8_interface.py
|
| diff --git a/Source/bindings/scripts/unstable/v8_interface.py b/Source/bindings/scripts/unstable/v8_interface.py
|
| index fec79658a72b2ce2d56b15fa68bafe7c3f8d4345..7c2c3cee08d14c1ece373c4c3e2b4a44bbca1fb7 100644
|
| --- a/Source/bindings/scripts/unstable/v8_interface.py
|
| +++ b/Source/bindings/scripts/unstable/v8_interface.py
|
| @@ -74,8 +74,8 @@ def generate_interface(interface):
|
| includes.add('bindings/v8/BindingSecurity.h')
|
|
|
| # [GenerateVisitDOMWrapper]
|
| - generate_visit_dom_wrapper_function = extended_attributes.get('GenerateVisitDOMWrapper')
|
| - if generate_visit_dom_wrapper_function:
|
| + check_reachable_method = extended_attributes.get('GenerateVisitDOMWrapper')
|
| + if check_reachable_method:
|
| includes.update(['bindings/v8/V8GCController.h',
|
| 'core/dom/Element.h'])
|
|
|
| @@ -84,6 +84,15 @@ def generate_interface(interface):
|
| if is_measure_as:
|
| includes.add('core/frame/UseCounter.h')
|
|
|
| + # [SetReference]
|
| + set_reference_list = [{
|
| + 'name': argument.name,
|
| + 'idl_type': argument.idl_type,
|
| + 'v8_type': v8_types.v8_type(argument.idl_type),
|
| + } for argument in extended_attributes.get('SetReference', [])]
|
| + for set_reference in set_reference_list:
|
| + v8_types.add_includes_for_type(set_reference['idl_type'])
|
| +
|
| # [SpecialWrapFor]
|
| if 'SpecialWrapFor' in extended_attributes:
|
| special_wrap_for = extended_attributes['SpecialWrapFor'].split('|')
|
| @@ -132,10 +141,10 @@ def generate_interface(interface):
|
|
|
| template_contents = {
|
| 'any_type_attributes': any_type_attributes,
|
| + 'check_reachable_method': check_reachable_method,
|
| 'conditional_string': conditional_string(interface), # [Conditional]
|
| 'constructors': constructors,
|
| 'cpp_class': cpp_name(interface),
|
| - 'generate_visit_dom_wrapper_function': generate_visit_dom_wrapper_function,
|
| 'has_custom_constructor': bool(custom_constructors),
|
| 'has_custom_legacy_call_as_function': has_extended_attribute_value(interface, 'Custom', 'LegacyCallAsFunction'), # [Custom=LegacyCallAsFunction]
|
| 'has_custom_to_v8': has_extended_attribute_value(interface, 'Custom', 'ToV8'), # [Custom=ToV8]
|
| @@ -144,7 +153,7 @@ def generate_interface(interface):
|
| 'has_visit_dom_wrapper': (
|
| # [Custom=Wrap], [GenerateVisitDOMWrapper]
|
| has_extended_attribute_value(interface, 'Custom', 'VisitDOMWrapper') or
|
| - 'GenerateVisitDOMWrapper' in extended_attributes),
|
| + check_reachable_method or set_reference_list),
|
| 'header_includes': header_includes,
|
| 'interface_length':
|
| interface_length(interface, constructors + custom_constructors),
|
| @@ -163,6 +172,7 @@ def generate_interface(interface):
|
| 'named_constructor': named_constructor,
|
| 'parent_interface': parent_interface,
|
| 'runtime_enabled_function': runtime_enabled_function_name(interface), # [RuntimeEnabled]
|
| + 'set_reference_list': set_reference_list,
|
| 'special_wrap_for': special_wrap_for,
|
| 'v8_class': v8_utilities.v8_class_name(interface),
|
| }
|
|
|