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

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

Issue 139653005: IDL compiler: sync Python to r166626 (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Refactored Created 6 years, 10 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 | « Source/bindings/templates/interface.h ('k') | Source/bindings/templates/methods.cpp » ('j') | 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(interface_name) %} 10 '{0}V8Internal::{0}ConstructorGetter'.format(interface_name) %}
(...skipping 1141 matching lines...) Expand 10 before | Expand all | Expand 10 after
1152 return wrapper; 1152 return wrapper;
1153 } 1153 }
1154 1154
1155 {% endif %} 1155 {% endif %}
1156 {% endblock %} 1156 {% endblock %}
1157 1157
1158 1158
1159 {##############################################################################} 1159 {##############################################################################}
1160 {% block create_wrapper %} 1160 {% block create_wrapper %}
1161 {% if not has_custom_to_v8 %} 1161 {% if not has_custom_to_v8 %}
1162 {% set pass_ref_ptr = 'PassRefPtrWillBeRawPtr' if is_garbage_collected else
1163 'PassRefPtr' %}
1164 v8::Handle<v8::Object> {{v8_class}}::createWrapper({{pass_ref_ptr}}<{{cpp_class} }> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate) 1162 v8::Handle<v8::Object> {{v8_class}}::createWrapper({{pass_ref_ptr}}<{{cpp_class} }> impl, v8::Handle<v8::Object> creationContext, v8::Isolate* isolate)
1165 { 1163 {
1166 ASSERT(impl); 1164 ASSERT(impl);
1167 ASSERT(!DOMDataStore::containsWrapper<{{v8_class}}>(impl.get(), isolate)); 1165 ASSERT(!DOMDataStore::containsWrapper<{{v8_class}}>(impl.get(), isolate));
1168 if (ScriptWrappable::wrapperCanBeStoredInObject(impl.get())) { 1166 if (ScriptWrappable::wrapperCanBeStoredInObject(impl.get())) {
1169 const WrapperTypeInfo* actualInfo = ScriptWrappable::getTypeInfoFromObje ct(impl.get()); 1167 const WrapperTypeInfo* actualInfo = ScriptWrappable::getTypeInfoFromObje ct(impl.get());
1170 // Might be a XXXConstructor::wrapperTypeInfo instead of an XXX::wrapper TypeInfo. These will both have 1168 // Might be a XXXConstructor::wrapperTypeInfo instead of an XXX::wrapper TypeInfo. These will both have
1171 // the same object de-ref functions, though, so use that as the basis of the check. 1169 // the same object de-ref functions, though, so use that as the basis of the check.
1172 RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(actualInfo->derefObjectFunction == wrapperTypeInfo.derefObjectFunction); 1170 RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(actualInfo->derefObjectFunction == wrapperTypeInfo.derefObjectFunction);
1173 } 1171 }
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
1217 fromInternalPointer(object)->deref(); 1215 fromInternalPointer(object)->deref();
1218 } 1216 }
1219 1217
1220 template<> 1218 template<>
1221 v8::Handle<v8::Value> toV8NoInline({{cpp_class}}* impl, v8::Handle<v8::Object> c reationContext, v8::Isolate* isolate) 1219 v8::Handle<v8::Value> toV8NoInline({{cpp_class}}* impl, v8::Handle<v8::Object> c reationContext, v8::Isolate* isolate)
1222 { 1220 {
1223 return toV8(impl, creationContext, isolate); 1221 return toV8(impl, creationContext, isolate);
1224 } 1222 }
1225 1223
1226 {% endblock %} 1224 {% endblock %}
OLDNEW
« no previous file with comments | « Source/bindings/templates/interface.h ('k') | Source/bindings/templates/methods.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698