| OLD | NEW |
| 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 IdlTypeBase | 7 IdlTypeBase |
| 8 IdlType | 8 IdlType |
| 9 IdlUnionType | 9 IdlUnionType |
| 10 IdlArrayOrSequenceType | 10 IdlArrayOrSequenceType |
| (...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 } | 267 } |
| 268 | 268 |
| 269 def __setstate__(self, state): | 269 def __setstate__(self, state): |
| 270 self.member_types = state['member_types'] | 270 self.member_types = state['member_types'] |
| 271 | 271 |
| 272 @property | 272 @property |
| 273 def is_union_type(self): | 273 def is_union_type(self): |
| 274 return True | 274 return True |
| 275 | 275 |
| 276 @property | 276 @property |
| 277 def as_union_type(self): |
| 278 # Note: Use this to "look through" a possible IdlNullableType wrapper. |
| 279 return self |
| 280 |
| 281 @property |
| 277 def name(self): | 282 def name(self): |
| 278 """Return type name (or inner type name if nullable) | 283 """Return type name (or inner type name if nullable) |
| 279 | 284 |
| 280 http://heycam.github.io/webidl/#dfn-type-name | 285 http://heycam.github.io/webidl/#dfn-type-name |
| 281 """ | 286 """ |
| 282 return 'Or'.join(member_type.name for member_type in self.member_types) | 287 return 'Or'.join(member_type.name for member_type in self.member_types) |
| 283 | 288 |
| 284 def resolve_typedefs(self, typedefs): | 289 def resolve_typedefs(self, typedefs): |
| 285 self.member_types = [ | 290 self.member_types = [ |
| 286 typedefs.get(member_type, member_type) | 291 typedefs.get(member_type, member_type) |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 368 def is_nullable(self): | 373 def is_nullable(self): |
| 369 return True | 374 return True |
| 370 | 375 |
| 371 @property | 376 @property |
| 372 def name(self): | 377 def name(self): |
| 373 return self.inner_type.name + 'OrNull' | 378 return self.inner_type.name + 'OrNull' |
| 374 | 379 |
| 375 def resolve_typedefs(self, typedefs): | 380 def resolve_typedefs(self, typedefs): |
| 376 self.inner_type = self.inner_type.resolve_typedefs(typedefs) | 381 self.inner_type = self.inner_type.resolve_typedefs(typedefs) |
| 377 return self | 382 return self |
| OLD | NEW |