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

Side by Side Diff: third_party/WebKit/Source/build/scripts/make_computed_style_base.py

Issue 2329463004: ABANDONED CL: Changes needed to make things compile after running rewrite_to_chrome_style tool. (Closed)
Patch Set: Rebasing the fixes... Created 3 years, 10 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 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2016 The Chromium Authors. All rights reserved. 2 # Copyright 2016 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 import math 6 import math
7 import sys 7 import sys
8 8
9 import json5_generator 9 import json5_generator
10 import template_expander 10 import template_expander
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 if property_['field_storage_type']: 115 if property_['field_storage_type']:
116 type_path = property_['field_storage_type'] 116 type_path = property_['field_storage_type']
117 type_name = type_path.split('/')[-1] 117 type_name = type_path.split('/')[-1]
118 else: 118 else:
119 type_name = property_['type_name'] 119 type_name = property_['type_name']
120 type_path = None 120 type_path = None
121 121
122 # For now, the getter name should match the field name. Later, getter names 122 # For now, the getter name should match the field name. Later, getter names
123 # will start with an uppercase letter, so if they conflict with the type nam e, 123 # will start with an uppercase letter, so if they conflict with the type nam e,
124 # add 'get' to the front. 124 # add 'get' to the front.
125 getter_method_name = property_name_lower 125 getter_method_name = property_['getter']
126 if type_name == property_name: 126 if type_name == property_name:
127 getter_method_name = 'get' + property_name 127 getter_method_name = 'Get' + property_name
128 128
129 assert property_['initial_keyword'] is not None, \ 129 assert property_['initial_keyword'] is not None, \
130 ('MakeComputedStyleBase requires an initial keyword for keyword_only val ues, none specified ' 130 ('MakeComputedStyleBase requires an initial keyword for keyword_only val ues, none specified '
131 'for property ' + property_['name']) 131 'for property ' + property_['name'])
132 default_value = type_name + '::k' + camel_case(property_['initial_keyword']) 132 default_value = type_name + '::k' + camel_case(property_['initial_keyword'])
133 133
134 # Add the property itself as a member variable. 134 # Add the property itself as a member variable.
135 return Field( 135 return Field(
136 'property', 136 'property',
137 name=field_name, 137 name=field_name,
138 property_name=property_['name'], 138 property_name=property_['name'],
139 inherited=property_['inherited'], 139 inherited=property_['inherited'],
140 independent=property_['independent'], 140 independent=property_['independent'],
141 storage_type=type_name, 141 storage_type=type_name,
142 storage_type_path=type_path, 142 storage_type_path=type_path,
143 size=int(math.ceil(bits_needed)), 143 size=int(math.ceil(bits_needed)),
144 default_value=default_value, 144 default_value=default_value,
145 getter_method_name=getter_method_name, 145 getter_method_name=getter_method_name,
146 setter_method_name='set' + property_name, 146 setter_method_name='Set' + property_name,
147 initial_method_name='initial' + property_name, 147 initial_method_name='Initial' + property_name,
148 resetter_method_name='reset' + property_name, 148 resetter_method_name='Reset' + property_name,
149 is_inherited_method_name=property_name_lower + 'IsInherited', 149 is_inherited_method_name=property_name + 'IsInherited',
150 ) 150 )
151 151
152 152
153 def _create_inherited_flag_field(property_): 153 def _create_inherited_flag_field(property_):
154 """ 154 """
155 Create the field used for an inheritance fast path from an independent CSS p roperty, 155 Create the field used for an inheritance fast path from an independent CSS p roperty,
156 and return the Field object. 156 and return the Field object.
157 """ 157 """
158 property_name = property_['name_for_methods'] 158 property_name = property_['name_for_methods']
159 property_name_lower = lower_first(property_name) 159 property_name_lower = lower_first(property_name)
160 160
161 field_name_suffix_upper = property_name + 'IsInherited' 161 field_name_suffix_upper = property_name + 'IsInherited'
162 field_name_suffix_lower = property_name_lower + 'IsInherited' 162 field_name_suffix_lower = property_name_lower + 'IsInherited'
163 163
164 return Field( 164 return Field(
165 'inherited_flag', 165 'inherited_flag',
166 name='m_' + field_name_suffix_lower, 166 name='m_' + field_name_suffix_lower,
167 property_name=property_['name'], 167 property_name=property_['name'],
168 storage_type='bool', 168 storage_type='bool',
169 storage_type_path=None, 169 storage_type_path=None,
170 size=1, 170 size=1,
171 default_value='true', 171 default_value='true',
172 getter_method_name=field_name_suffix_lower, 172 getter_method_name=field_name_suffix_upper,
173 setter_method_name='set' + field_name_suffix_upper, 173 setter_method_name='Set' + field_name_suffix_upper,
174 initial_method_name='initial' + field_name_suffix_upper, 174 initial_method_name='Initial' + field_name_suffix_upper,
175 resetter_method_name='reset' + field_name_suffix_upper, 175 resetter_method_name='Reset' + field_name_suffix_upper,
176 ) 176 )
177 177
178 178
179 def _create_fields(properties): 179 def _create_fields(properties):
180 """ 180 """
181 Create ComputedStyle fields from CSS properties and return a list of Field o bjects. 181 Create ComputedStyle fields from CSS properties and return a list of Field o bjects.
182 """ 182 """
183 fields = [] 183 fields = []
184 for property_ in properties: 184 for property_ in properties:
185 # Keywords only means we generate an enum field. 185 # Keywords only means we generate an enum field.
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 def generate_base_computed_style_constants(self): 294 def generate_base_computed_style_constants(self):
295 return { 295 return {
296 'properties': self._properties, 296 'properties': self._properties,
297 'enums': self._generated_enums, 297 'enums': self._generated_enums,
298 'fields': self._fields, 298 'fields': self._fields,
299 'expected_total_field_bytes': self._expected_total_field_bytes, 299 'expected_total_field_bytes': self._expected_total_field_bytes,
300 } 300 }
301 301
302 if __name__ == '__main__': 302 if __name__ == '__main__':
303 json5_generator.Maker(ComputedStyleBaseWriter).main() 303 json5_generator.Maker(ComputedStyleBaseWriter).main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698