Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(110)

Side by Side Diff: Source/bindings/templates/interface.cpp

Issue 176993007: Cleanup [SetWrapperReferenceFromReference] cruft (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 {% extends 'interface_base.cpp' %} 1 {% extends 'interface_base.cpp' %}
2 2
3 3
4 {##############################################################################} 4 {##############################################################################}
5 {% macro attribute_configuration(attribute) %} 5 {% macro attribute_configuration(attribute) %}
6 {% set getter_callback = 6 {% set getter_callback =
7 '%sV8Internal::%sAttributeGetterCallback' % 7 '%sV8Internal::%sAttributeGetterCallback' %
8 (cpp_class, attribute.name) 8 (cpp_class, attribute.name)
9 if not attribute.constructor_type else 9 if not attribute.constructor_type else
10 '{0}V8Internal::{0}ConstructorGetter'.format(cpp_class) %} 10 '{0}V8Internal::{0}ConstructorGetter'.format(cpp_class) %}
(...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after
671 V8DOMWrapper::associateObjectWithWrapper<{{v8_class}}>(event.release(), &{{v 8_class}}::wrapperTypeInfo, wrapper, info.GetIsolate(), WrapperConfiguration::De pendent); 671 V8DOMWrapper::associateObjectWithWrapper<{{v8_class}}>(event.release(), &{{v 8_class}}::wrapperTypeInfo, wrapper, info.GetIsolate(), WrapperConfiguration::De pendent);
672 v8SetReturnValue(info, wrapper); 672 v8SetReturnValue(info, wrapper);
673 } 673 }
674 674
675 {% endif %} 675 {% endif %}
676 {% endblock %} 676 {% endblock %}
677 677
678 678
679 {##############################################################################} 679 {##############################################################################}
680 {% block visit_dom_wrapper %} 680 {% block visit_dom_wrapper %}
681 {% if reachable_node_function or 681 {% if reachable_node_function or set_wrapper_reference_to_list %}
682 set_wrapper_reference_to_list %}
683 void {{v8_class}}::visitDOMWrapper(void* object, const v8::Persistent<v8::Object >& wrapper, v8::Isolate* isolate) 682 void {{v8_class}}::visitDOMWrapper(void* object, const v8::Persistent<v8::Object >& wrapper, v8::Isolate* isolate)
684 { 683 {
685 {{cpp_class}}* impl = fromInternalPointer(object); 684 {{cpp_class}}* impl = fromInternalPointer(object);
686 {% if set_wrapper_reference_to_list %} 685 {% if set_wrapper_reference_to_list %}
687 v8::Local<v8::Object> creationContext = v8::Local<v8::Object>::New(isolate, wrapper); 686 v8::Local<v8::Object> creationContext = v8::Local<v8::Object>::New(isolate, wrapper);
688 V8WrapperInstantiationScope scope(creationContext, isolate); 687 V8WrapperInstantiationScope scope(creationContext, isolate);
689 {% for set_wrapper_reference_to in set_wrapper_reference_to_list %} 688 {% for set_wrapper_reference_to in set_wrapper_reference_to_list %}
690 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im pl->{{set_wrapper_reference_to.name}}(); 689 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im pl->{{set_wrapper_reference_to.name}}();
691 if ({{set_wrapper_reference_to.name}}) { 690 if ({{set_wrapper_reference_to.name}}) {
692 if (!DOMDataStore::containsWrapper<{{set_wrapper_reference_to.v8_type}}> ({{set_wrapper_reference_to.name}}, isolate)) 691 if (!DOMDataStore::containsWrapper<{{set_wrapper_reference_to.v8_type}}> ({{set_wrapper_reference_to.name}}, isolate))
693 wrap({{set_wrapper_reference_to.name}}, creationContext, isolate); 692 wrap({{set_wrapper_reference_to.name}}, creationContext, isolate);
694 DOMDataStore::setWrapperReference<{{set_wrapper_reference_to.v8_type}}>( wrapper, {{set_wrapper_reference_to.name}}, isolate); 693 DOMDataStore::setWrapperReference<{{set_wrapper_reference_to.v8_type}}>( wrapper, {{set_wrapper_reference_to.name}}, isolate);
695 } 694 }
696 {% endfor %} 695 {% endfor %}
697 {% endif %} 696 {% endif %}
698 {% if reachable_node_function %} 697 {% if reachable_node_function %}
699 // The {{reachable_node_function}}() method may return a reference or a poin ter. 698 // The {{reachable_node_function}}() method may return a reference or a poin ter.
700 if (Node* owner = WTF::getPtr(impl->{{reachable_node_function}}())) { 699 if (Node* owner = WTF::getPtr(impl->{{reachable_node_function}}())) {
701 Node* root = V8GCController::opaqueRootForGC(owner, isolate); 700 Node* root = V8GCController::opaqueRootForGC(owner, isolate);
702 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r oot)), wrapper); 701 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r oot)), wrapper);
703 return; 702 return;
704 } 703 }
705 {% endif %} 704 {% endif %}
706 {% if reachable_node_function or set_wrapper_reference_to_list %}
707 setObjectGroup(object, wrapper, isolate); 705 setObjectGroup(object, wrapper, isolate);
708 {% endif %}
709 } 706 }
710 707
711 {% endif %} 708 {% endif %}
712 {% endblock %} 709 {% endblock %}
713 710
714 711
715 {##############################################################################} 712 {##############################################################################}
716 {% block shadow_attributes %} 713 {% block shadow_attributes %}
717 {% if interface_name == 'Window' %} 714 {% if interface_name == 'Window' %}
718 static const V8DOMConfiguration::AttributeConfiguration shadowAttributes[] = { 715 static const V8DOMConfiguration::AttributeConfiguration shadowAttributes[] = {
(...skipping 601 matching lines...) Expand 10 before | Expand all | Expand 10 after
1320 {% endfilter %} 1317 {% endfilter %}
1321 } 1318 }
1322 1319
1323 template<> 1320 template<>
1324 v8::Handle<v8::Value> toV8NoInline({{cpp_class}}* impl, v8::Handle<v8::Object> c reationContext, v8::Isolate* isolate) 1321 v8::Handle<v8::Value> toV8NoInline({{cpp_class}}* impl, v8::Handle<v8::Object> c reationContext, v8::Isolate* isolate)
1325 { 1322 {
1326 return toV8(impl, creationContext, isolate); 1323 return toV8(impl, creationContext, isolate);
1327 } 1324 }
1328 1325
1329 {% endblock %} 1326 {% endblock %}
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698