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

Side by Side Diff: Source/bindings/scripts/idl_types.py

Issue 282873004: IDL: overload resolution for string and enumeration arguments (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebaseline tests Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 """IDL type handling. 4 """IDL type handling.
5 5
6 Classes: 6 Classes:
7 IdlType 7 IdlType
8 IdlUnionType 8 IdlUnionType
9 """ 9 """
10 10
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 166
167 @property 167 @property
168 def is_integer_type(self): 168 def is_integer_type(self):
169 return self.base_type in INTEGER_TYPES and not self.array_or_sequence_ty pe 169 return self.base_type in INTEGER_TYPES and not self.array_or_sequence_ty pe
170 170
171 @property 171 @property
172 def is_numeric_type(self): 172 def is_numeric_type(self):
173 return self.base_type in NUMERIC_TYPES and not self.array_or_sequence_ty pe 173 return self.base_type in NUMERIC_TYPES and not self.array_or_sequence_ty pe
174 174
175 @property 175 @property
176 def is_primitive_type(self):
177 return self.base_type in PRIMITIVE_TYPES and not self.array_or_sequence_ type
178
179 @property
176 def is_interface_type(self): 180 def is_interface_type(self):
177 # Anything that is not another type is an interface type. 181 # Anything that is not another type is an interface type.
178 # http://www.w3.org/TR/WebIDL/#idl-types 182 # http://www.w3.org/TR/WebIDL/#idl-types
179 # http://www.w3.org/TR/WebIDL/#idl-interface 183 # http://www.w3.org/TR/WebIDL/#idl-interface
180 # In C++ these are RefPtr or PassRefPtr types. 184 # In C++ these are RefPtr or PassRefPtr types.
181 return not(self.is_basic_type or 185 return not(self.is_basic_type or
182 self.is_composite_type or 186 self.is_composite_type or
183 self.is_callback_function or 187 self.is_callback_function or
184 self.is_enum or 188 self.is_enum or
185 self.name == 'Object' or 189 self.name == 'Object' or
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 286
283 @property 287 @property
284 def is_integer_type(self): 288 def is_integer_type(self):
285 return False 289 return False
286 290
287 @property 291 @property
288 def is_numeric_type(self): 292 def is_numeric_type(self):
289 return False 293 return False
290 294
291 @property 295 @property
296 def is_primitivee_type(self):
297 return False
298
299 @property
292 def is_sequence(self): 300 def is_sequence(self):
293 # We do not support sequences of union types 301 # We do not support sequences of union types
294 return False 302 return False
295 303
296 @property 304 @property
297 def is_union_type(self): 305 def is_union_type(self):
298 return True 306 return True
299 307
300 @property 308 @property
301 def name(self): 309 def name(self):
302 return 'Or'.join(member_type.name for member_type in self.member_types) 310 return 'Or'.join(member_type.name for member_type in self.member_types)
303 311
304 def resolve_typedefs(self, typedefs): 312 def resolve_typedefs(self, typedefs):
305 self.member_types = [ 313 self.member_types = [
306 typedefs.get(member_type, member_type) 314 typedefs.get(member_type, member_type)
307 for member_type in self.member_types] 315 for member_type in self.member_types]
308 return self 316 return self
OLDNEW
« no previous file with comments | « LayoutTests/virtual/gpu/fast/canvas/canvas-path-context-fill-expected.txt ('k') | Source/bindings/scripts/v8_interface.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698