| Index: third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| diff --git a/third_party/WebKit/Source/bindings/scripts/v8_interface.py b/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| index 95bebe6d73e6bad0083dace58c3c811477425eee..5e22ef0dfb19034ef4d06992fc24d0e68d98e5f5 100644
|
| --- a/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| +++ b/third_party/WebKit/Source/bindings/scripts/v8_interface.py
|
| @@ -46,7 +46,7 @@ import v8_methods
|
| import v8_types
|
| from v8_types import cpp_ptr_type, cpp_template_type
|
| import v8_utilities
|
| -from v8_utilities import (cpp_name_or_partial, capitalize, conditional_string, cpp_name, gc_type,
|
| +from v8_utilities import (api_experiment_enabled_function, cpp_name_or_partial, capitalize, conditional_string, cpp_name, gc_type,
|
| has_extended_attribute_value, runtime_enabled_function_name,
|
| extended_attribute_value_as_list, is_legacy_interface_type_checking)
|
|
|
| @@ -162,7 +162,12 @@ def interface_context(interface):
|
| cpp_class_name_or_partial = cpp_name_or_partial(interface)
|
| v8_class_name_or_partial = v8_utilities.v8_class_name_or_partial(interface)
|
|
|
| + if 'APIExperimentEnabled' in extended_attributes:
|
| + includes.add('core/experiments/ExperimentalFeatures.h')
|
| + includes.add('core/inspector/ConsoleMessage.h')
|
| +
|
| context = {
|
| + 'api_experiment_name': v8_utilities.api_experiment_name(interface),
|
| 'conditional_string': conditional_string(interface), # [Conditional]
|
| 'cpp_class': cpp_class_name,
|
| 'cpp_class_or_partial': cpp_class_name_or_partial,
|
| @@ -261,7 +266,7 @@ def interface_context(interface):
|
| constant_configuration_constants = []
|
|
|
| for constant in constants:
|
| - if constant['measure_as'] or constant['deprecate_as']:
|
| + if constant['measure_as'] or constant['deprecate_as'] or constant['api_experiment_name']:
|
| special_getter_constants.append(constant)
|
| continue
|
| runtime_enabled_function = constant['runtime_enabled_function']
|
| @@ -606,10 +611,19 @@ def interface_context(interface):
|
| # [DeprecateAs], [Reflect], [RuntimeEnabled]
|
| def constant_context(constant, interface):
|
| extended_attributes = constant.extended_attributes
|
| +
|
| + if 'APIExperimentEnabled' in extended_attributes:
|
| + includes.add('core/experiments/ExperimentalFeatures.h')
|
| + includes.add('core/inspector/ConsoleMessage.h')
|
| +
|
| return {
|
| + 'api_experiment_enabled': v8_utilities.api_experiment_enabled_function(constant), # [APIExperimentEnabled]
|
| + 'api_experiment_enabled_per_interface': v8_utilities.api_experiment_enabled_function(interface), # [APIExperimentEnabled]
|
| + 'api_experiment_name': extended_attributes.get('APIExperimentEnabled'), # [APIExperimentEnabled]
|
| 'cpp_class': extended_attributes.get('PartialInterfaceImplementedAs'),
|
| 'deprecate_as': v8_utilities.deprecate_as(constant), # [DeprecateAs]
|
| 'idl_type': constant.idl_type.name,
|
| + 'is_api_experiment_enabled': v8_utilities.api_experiment_enabled_function(constant) or v8_utilities.api_experiment_enabled_function(interface), # [APIExperimentEnabled]
|
| 'measure_as': v8_utilities.measure_as(constant, interface), # [MeasureAs]
|
| 'name': constant.name,
|
| # FIXME: use 'reflected_name' as correct 'name'
|
|
|