Index: Source/bindings/scripts/v8_interface.py |
diff --git a/Source/bindings/scripts/v8_interface.py b/Source/bindings/scripts/v8_interface.py |
index 9cb32a59af27c5984346bf23bf7c82a820cc6830..220322382ef18518530e92e94731bd7af8f3c065 100644 |
--- a/Source/bindings/scripts/v8_interface.py |
+++ b/Source/bindings/scripts/v8_interface.py |
@@ -82,6 +82,23 @@ def interface_context(interface): |
header_includes.update(v8_types.includes_for_interface(parent_interface)) |
extended_attributes = interface.extended_attributes |
+ is_array_type = IdlType(interface.name).is_array_element_type |
haraken
2014/10/14 15:11:18
Can we use interface.idl_type.is_array_element_typ
Yuki
2014/10/15 09:35:23
|interface| of type IdlInterface does not have |id
haraken
2014/10/16 05:41:40
I think it's better to introduce interface.idl_typ
Yuki
2014/10/16 14:21:50
Done.
|
+ is_typed_array_type = IdlType(interface.name).is_typed_array_element_type |
haraken
2014/10/14 15:11:18
Ditto.
Yuki
2014/10/16 14:21:50
Done.
|
+ if is_array_type: |
+ includes.add('bindings/core/v8/V8ArrayBuffer.h') |
+ if interface.name == 'ArrayBufferView': |
+ includes.update(( |
+ 'bindings/core/v8/V8Int8Array.h', |
+ 'bindings/core/v8/V8Int16Array.h', |
+ 'bindings/core/v8/V8Int32Array.h', |
+ 'bindings/core/v8/V8Uint8Array.h', |
+ 'bindings/core/v8/V8Uint8ClampedArray.h', |
+ 'bindings/core/v8/V8Uint16Array.h', |
+ 'bindings/core/v8/V8Uint32Array.h', |
+ 'bindings/core/v8/V8Float32Array.h', |
+ 'bindings/core/v8/V8Float64Array.h', |
+ 'bindings/core/v8/V8DataView.h')) |
+ |
# [ActiveDOMObject] |
is_active_dom_object = 'ActiveDOMObject' in extended_attributes |
@@ -157,12 +174,15 @@ def interface_context(interface): |
'header_includes': header_includes, |
'interface_name': interface.name, |
'is_active_dom_object': is_active_dom_object, |
+ 'is_array_type': is_array_type, |
'is_check_security': is_check_security, |
'is_dependent_lifetime': is_dependent_lifetime, |
'is_event_target': inherits_interface(interface.name, 'EventTarget'), |
'is_exception': interface.is_exception, |
'is_node': inherits_interface(interface.name, 'Node'), |
'is_script_wrappable': is_script_wrappable, |
+ 'is_typed_array_type': is_typed_array_type, |
+ 'is_v8object': not is_array_type, |
haraken
2014/10/14 15:11:18
"v8object" sounds a bit too general to me. I'd jus
Yuki
2014/10/15 09:35:23
is_v8object (meant for v8::Object) is used at plac
|
'iterator_method': iterator_method, |
'lifetime': 'Dependent' |
if (has_visit_dom_wrapper or |