| OLD | NEW |
| 1 {% extends 'interface_base.cpp' %} | 1 {% extends 'interface_base.cpp' %} |
| 2 | 2 |
| 3 | 3 |
| 4 {##############################################################################} | 4 {##############################################################################} |
| 5 {% block indexed_property_getter %} | 5 {% block indexed_property_getter %} |
| 6 {% if indexed_property_getter and not indexed_property_getter.is_custom %} | 6 {% if indexed_property_getter and not indexed_property_getter.is_custom %} |
| 7 {% set getter = indexed_property_getter %} | 7 {% set getter = indexed_property_getter %} |
| 8 static void indexedPropertyGetter(uint32_t index, const v8::PropertyCallbackInfo
<v8::Value>& info) | 8 static void indexedPropertyGetter(uint32_t index, const v8::PropertyCallbackInfo
<v8::Value>& info) |
| 9 { | 9 { |
| 10 {{cpp_class}}* impl = {{v8_class}}::toImpl(info.Holder()); | 10 {{cpp_class}}* impl = {{v8_class}}::toImpl(info.Holder()); |
| (...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 539 exceptionState.throwTypeError("No matching constructor signature."); | 539 exceptionState.throwTypeError("No matching constructor signature."); |
| 540 exceptionState.throwIfNeeded(); | 540 exceptionState.throwIfNeeded(); |
| 541 } | 541 } |
| 542 | 542 |
| 543 {% endif %} | 543 {% endif %} |
| 544 {% endblock %} | 544 {% endblock %} |
| 545 | 545 |
| 546 | 546 |
| 547 {##############################################################################} | 547 {##############################################################################} |
| 548 {% block visit_dom_wrapper %} | 548 {% block visit_dom_wrapper %} |
| 549 {% if reachable_node_function or set_wrapper_reference_to_list %} | 549 {% if set_wrapper_reference_from or set_wrapper_reference_to %} |
| 550 void {{v8_class}}::visitDOMWrapper(v8::Isolate* isolate, ScriptWrappable* script
Wrappable, const v8::Persistent<v8::Object>& wrapper) | 550 void {{v8_class}}::visitDOMWrapper(v8::Isolate* isolate, ScriptWrappable* script
Wrappable, const v8::Persistent<v8::Object>& wrapper) |
| 551 { | 551 { |
| 552 {{cpp_class}}* impl = scriptWrappable->toImpl<{{cpp_class}}>(); | 552 {{cpp_class}}* impl = scriptWrappable->toImpl<{{cpp_class}}>(); |
| 553 {% if set_wrapper_reference_to_list %} | 553 {% if set_wrapper_reference_to %} |
| 554 v8::Local<v8::Object> creationContext = v8::Local<v8::Object>::New(isolate,
wrapper); | 554 v8::Local<v8::Object> creationContext = v8::Local<v8::Object>::New(isolate,
wrapper); |
| 555 V8WrapperInstantiationScope scope(creationContext, isolate); | 555 V8WrapperInstantiationScope scope(creationContext, isolate); |
| 556 {% for set_wrapper_reference_to in set_wrapper_reference_to_list %} | |
| 557 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im
pl->{{set_wrapper_reference_to.name}}(); | 556 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im
pl->{{set_wrapper_reference_to.name}}(); |
| 558 if ({{set_wrapper_reference_to.name}}) { | 557 if ({{set_wrapper_reference_to.name}}) { |
| 559 if (!DOMDataStore::containsWrapper({{set_wrapper_reference_to.name}}, is
olate)) | 558 if (!DOMDataStore::containsWrapper({{set_wrapper_reference_to.name}}, is
olate)) |
| 560 {{set_wrapper_reference_to.name}}->wrap(isolate, creationContext); | 559 {{set_wrapper_reference_to.name}}->wrap(isolate, creationContext); |
| 561 DOMDataStore::setWrapperReference(wrapper, {{set_wrapper_reference_to.na
me}}, isolate); | 560 DOMDataStore::setWrapperReference(wrapper, {{set_wrapper_reference_to.na
me}}, isolate); |
| 562 } | 561 } |
| 563 {% endfor %} | |
| 564 {% endif %} | 562 {% endif %} |
| 565 {% if reachable_node_function %} | 563 {% if set_wrapper_reference_from %} |
| 566 // The {{reachable_node_function}}() method may return a reference or a poin
ter. | 564 // The {{set_wrapper_reference_from}}() method may return a reference or a p
ointer. |
| 567 if (Node* owner = WTF::getPtr(impl->{{reachable_node_function}}())) { | 565 if (Node* owner = WTF::getPtr(impl->{{set_wrapper_reference_from}}())) { |
| 568 Node* root = V8GCController::opaqueRootForGC(isolate, owner); | 566 Node* root = V8GCController::opaqueRootForGC(isolate, owner); |
| 569 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r
oot)), wrapper); | 567 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r
oot)), wrapper); |
| 570 return; | 568 return; |
| 571 } | 569 } |
| 572 {% endif %} | 570 {% endif %} |
| 573 setObjectGroup(isolate, scriptWrappable, wrapper); | 571 setObjectGroup(isolate, scriptWrappable, wrapper); |
| 574 } | 572 } |
| 575 | 573 |
| 576 {% endif %} | 574 {% endif %} |
| 577 {% endblock %} | 575 {% endblock %} |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 943 } | 941 } |
| 944 | 942 |
| 945 {% for method in methods if method.overloads and method.overloads.has_partial_ov
erloads %} | 943 {% for method in methods if method.overloads and method.overloads.has_partial_ov
erloads %} |
| 946 void {{v8_class}}::register{{method.name | blink_capitalize}}MethodForPartialInt
erface(void (*method)(const v8::FunctionCallbackInfo<v8::Value>&)) | 944 void {{v8_class}}::register{{method.name | blink_capitalize}}MethodForPartialInt
erface(void (*method)(const v8::FunctionCallbackInfo<v8::Value>&)) |
| 947 { | 945 { |
| 948 {{cpp_class}}V8Internal::{{method.name}}MethodForPartialInterface = method; | 946 {{cpp_class}}V8Internal::{{method.name}}MethodForPartialInterface = method; |
| 949 } | 947 } |
| 950 {% endfor %} | 948 {% endfor %} |
| 951 {% endif %} | 949 {% endif %} |
| 952 {% endblock %} | 950 {% endblock %} |
| OLD | NEW |