Chromium Code Reviews| 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 a8b70905c090b87faa4160b7ed00f0b1f853dff6..ee027bf6d0b3d17262e60bca9ff50bbb76c70b2e 100644 |
| --- a/third_party/WebKit/Source/bindings/scripts/v8_interface.py |
| +++ b/third_party/WebKit/Source/bindings/scripts/v8_interface.py |
| @@ -426,10 +426,15 @@ def interface_context(interface): |
| extended_attributes=used_extended_attributes, |
| implemented_as=implemented_as) |
| - if interface.iterable or interface.maplike or interface.setlike or 'Iterable' in extended_attributes: |
| + if interface.has_indexed_elements: |
| + # Window.idl in Blink has indexed properties, but the spec says |
| + # Window interface doesn't have indexed properties, instead |
| + # the WindowProxy exotic object has indexed properties. Thus, |
| + # Window interface must not support iterators. |
| + if interface.name != 'Window': |
| + has_array_iterator = True |
|
peria
2016/09/15 12:06:43
nit: has_array_iterator = (interface.name != 'Wind
Yuki
2016/09/15 12:35:47
Done.
|
| + elif interface.iterable or interface.maplike or interface.setlike or 'Iterable' in extended_attributes: |
| iterator_method = generated_iterator_method('iterator', implemented_as='iterator') |
| - elif interface.has_indexed_elements: |
| - has_array_iterator = True |
| if interface.iterable or interface.maplike or interface.setlike: |
| implicit_methods = [ |