Index: Source/bindings/scripts/v8_interface.py |
diff --git a/Source/bindings/scripts/v8_interface.py b/Source/bindings/scripts/v8_interface.py |
index d5a49707b12e2107cba326df22c406938821575b..d87213671e8375bc3323e45d605b1f6e9d4f9b77 100644 |
--- a/Source/bindings/scripts/v8_interface.py |
+++ b/Source/bindings/scripts/v8_interface.py |
@@ -342,11 +342,25 @@ def interface_context(interface): |
and (interface.iterable or interface.maplike or interface.setlike |
or 'Iterable' in extended_attributes)): |
+ use_extended_attributes = {} |
haraken
2015/01/14 11:38:47
used_extended_attributes ?
Jens Widell
2015/01/14 11:50:45
Works too. :-)
Jens Widell
2015/01/14 12:00:02
Done.
|
+ |
+ if interface.iterable: |
+ use_extended_attributes.update(interface.iterable.extended_attributes) |
+ elif interface.maplike: |
haraken
2015/01/14 11:38:47
elif => if ?
Jens Widell
2015/01/14 11:50:45
Wouldn't change behavior, since there can only be
haraken
2015/01/14 12:53:33
Makes sense.
|
+ use_extended_attributes.update(interface.maplike.extended_attributes) |
+ elif interface.setlike: |
haraken
2015/01/14 11:38:47
elif => if ?
|
+ use_extended_attributes.update(interface.setlike.extended_attributes) |
+ |
+ if 'RaisesException' not in use_extended_attributes: |
+ use_extended_attributes['RaisesException'] = None |
+ if 'CallWith' not in use_extended_attributes: |
+ use_extended_attributes['CallWith'] = 'ScriptState' |
haraken
2015/01/14 11:38:47
This rule looks a bit hacky. Do we need to support
Jens Widell
2015/01/14 11:50:45
We don't need it right now, for sure, since there'
|
+ |
def generated_iterator_method(name): |
return generated_method( |
return_type=IdlType('Iterator'), |
name=name, |
- extended_attributes={'RaisesException': None, 'CallWith': 'ScriptState'}) |
+ extended_attributes=use_extended_attributes) |
iterator_method = generated_iterator_method('iterator') |