Commit e90d4fdc authored by Kent Tamura's avatar Kent Tamura Committed by Commit Bot

blinkbuild: Migrate enum_value_name() from name_utilities to NameStyleConverter.

Bug: 843927
Change-Id: I7a4c7912ae535ce9afa2a2a0df433eea185a9cfd
Reviewed-on: https://chromium-review.googlesource.com/1078407Reviewed-by: default avatarHitoshi Yoshida <peria@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562810}
parent 5b08906a
...@@ -215,3 +215,10 @@ class NameStyleConverter(object): ...@@ -215,3 +215,10 @@ class NameStyleConverter(object):
elif suffix: elif suffix:
camel_suffix = suffix[0].upper() + suffix[1:].lower() camel_suffix = suffix[0].upper() + suffix[1:].lower()
return camel_prefix + self.to_upper_camel_case() + camel_suffix return camel_prefix + self.to_upper_camel_case() + camel_suffix
def to_enum_value(self):
"""Represents this name as an enum value in Blink C++ style.
i.e. kUpperCamelCase
"""
return 'k' + self.to_upper_camel_case()
...@@ -165,6 +165,9 @@ class NameStyleConverterTest(unittest.TestCase): ...@@ -165,6 +165,9 @@ class NameStyleConverterTest(unittest.TestCase):
self.assertEqual(converter.to_function_name(prefix='IS', suffix='baz'), 'IsFooBarBaz') self.assertEqual(converter.to_function_name(prefix='IS', suffix='baz'), 'IsFooBarBaz')
self.assertEqual(converter.to_function_name(prefix='prefixPrefix', suffix=['a', 'b']), 'PrefixprefixFooBarAB') self.assertEqual(converter.to_function_name(prefix='prefixPrefix', suffix=['a', 'b']), 'PrefixprefixFooBarAB')
def test_to_enum_value(self):
self.assertEqual(NameStyleConverter('fooBar').to_enum_value(), 'kFooBar')
def test_lower_camel_case(self): def test_lower_camel_case(self):
converter = NameStyleConverter('someSuperThing') converter = NameStyleConverter('someSuperThing')
self.assertEqual(converter.to_lower_camel_case(), 'someSuperThing') self.assertEqual(converter.to_lower_camel_case(), 'someSuperThing')
......
...@@ -3,13 +3,10 @@ ...@@ -3,13 +3,10 @@
# Use of this source code is governed by a BSD-style license that can be # Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file. # found in the LICENSE file.
import json5_generator from blinkbuild.name_style_converter import NameStyleConverter
from name_utilities import (
enum_value_name,
enum_for_css_property,
enum_for_css_property_alias
)
from core.css.field_alias_expander import FieldAliasExpander from core.css.field_alias_expander import FieldAliasExpander
import json5_generator
from name_utilities import enum_for_css_property, enum_for_css_property_alias
# These values are converted using CSSPrimitiveValue in the setter function, # These values are converted using CSSPrimitiveValue in the setter function,
...@@ -214,8 +211,8 @@ class CSSProperties(object): ...@@ -214,8 +211,8 @@ class CSSProperties(object):
type_name = property_['type_name'] type_name = property_['type_name']
if (property_['field_template'] == 'keyword' or if (property_['field_template'] == 'keyword' or
property_['field_template'] == 'multi_keyword'): property_['field_template'] == 'multi_keyword'):
default_value = type_name + '::' + \ default_value = (type_name + '::' + NameStyleConverter(
enum_value_name(property_['default_value']) property_['default_value']).to_enum_value())
elif (property_['field_template'] == 'external' or elif (property_['field_template'] == 'external' or
property_['field_template'] == 'primitive' or property_['field_template'] == 'primitive' or
property_['field_template'] == 'pointer'): property_['field_template'] == 'pointer'):
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
from itertools import chain from itertools import chain
from blinkbuild.name_style_converter import NameStyleConverter from blinkbuild.name_style_converter import NameStyleConverter
from name_utilities import enum_value_name
def _flatten_list(x): def _flatten_list(x):
...@@ -78,7 +77,8 @@ class Enum(object): ...@@ -78,7 +77,8 @@ class Enum(object):
"""Represents a generated enum in ComputedStyleBaseConstants.""" """Represents a generated enum in ComputedStyleBaseConstants."""
def __init__(self, type_name, keywords, is_set): def __init__(self, type_name, keywords, is_set):
self.type_name = type_name self.type_name = type_name
self.values = [enum_value_name(keyword) for keyword in keywords] self.values = [NameStyleConverter(keyword).to_enum_value()
for keyword in keywords]
self.is_set = is_set self.is_set = is_set
......
...@@ -3,11 +3,12 @@ ...@@ -3,11 +3,12 @@
# Use of this source code is governed by a BSD-style license that can be # Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file. # found in the LICENSE file.
from blinkbuild.name_style_converter import NameStyleConverter
import json5_generator import json5_generator
import template_expander import template_expander
import make_style_builder import make_style_builder
import keyword_utils import keyword_utils
from name_utilities import enum_for_css_keyword, enum_value_name from name_utilities import enum_for_css_keyword
def _find_continuous_segment(numbers): def _find_continuous_segment(numbers):
...@@ -89,11 +90,12 @@ def _find_enum_longest_continuous_segment(property_, name_to_position_dictionary ...@@ -89,11 +90,12 @@ def _find_enum_longest_continuous_segment(property_, name_to_position_dictionary
enum_segment, enum_pair_list = _find_continuous_segment(enum_pair_list) enum_segment, enum_pair_list = _find_continuous_segment(enum_pair_list)
longest_segment = _find_largest_segment(enum_segment) longest_segment = _find_largest_segment(enum_segment)
enum_pair_list = [ enum_tuple_list = []
(enum_value_name(property_['keywords'][x[1]]), x[1], for x in enum_pair_list:
enum_for_css_keyword(property_['keywords'][x[1]]), x[0]) for x in enum_pair_list keyword = NameStyleConverter(property_['keywords'][x[1]])
] enum_tuple_list.append((keyword.to_enum_value(), x[1],
return enum_pair_list, enum_segment, longest_segment enum_for_css_keyword(keyword), x[0]))
return enum_tuple_list, enum_segment, longest_segment
class CSSValueIDMappingsWriter(make_style_builder.StyleBuilderWriter): class CSSValueIDMappingsWriter(make_style_builder.StyleBuilderWriter):
...@@ -129,7 +131,8 @@ class CSSValueIDMappingsWriter(make_style_builder.StyleBuilderWriter): ...@@ -129,7 +131,8 @@ class CSSValueIDMappingsWriter(make_style_builder.StyleBuilderWriter):
if property_['field_template'] == 'multi_keyword': if property_['field_template'] == 'multi_keyword':
mappings[property_['type_name']] = { mappings[property_['type_name']] = {
'default_value': property_['default_value'], 'default_value': property_['default_value'],
'mapping': [(enum_value_name(k), enum_for_css_keyword(k)) for k in property_['keywords']], 'mapping': [(k.to_enum_value(), enum_for_css_keyword(k))
for k in map(NameStyleConverter, property_['keywords'])],
} }
elif property_['field_template'] == 'keyword': elif property_['field_template'] == 'keyword':
enum_pair_list, enum_segment, p_segment = _find_enum_longest_continuous_segment( enum_pair_list, enum_segment, p_segment = _find_enum_longest_continuous_segment(
......
...@@ -109,8 +109,3 @@ def snake_case(words): ...@@ -109,8 +109,3 @@ def snake_case(words):
@naming_style @naming_style
def enum_type_name(words): def enum_type_name(words):
return _upper_camel_case(words) return _upper_camel_case(words)
@naming_style
def enum_value_name(words):
return 'k' + _upper_camel_case(words)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment