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

Side by Side Diff: sky/engine/bindings/scripts/templates/methods_cpp.template

Issue 936193005: Make it possible to inherit from any constructable host object (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Remove extra comment Created 5 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
OLDNEW
1 {##############################################################################} 1 {##############################################################################}
2 {# FIXME: We should return a rejected Promise if an error occurs in this 2 {# FIXME: We should return a rejected Promise if an error occurs in this
3 function when ALL methods in this overload return Promise. In order to do so, 3 function when ALL methods in this overload return Promise. In order to do so,
4 we must ensure either ALL or NO methods in this overload return Promise #} 4 we must ensure either ALL or NO methods in this overload return Promise #}
5 {% macro overload_resolution_method(method) %} 5 {% macro overload_resolution_method(method) %}
6 {% set overloads = method.overloads %} 6 {% set overloads = method.overloads %}
7 {% if method.is_static %} 7 {% if method.is_static %}
8 {% set offset = 0 %} 8 {% set offset = 0 %}
9 {% else %} 9 {% else %}
10 {% set offset = 1 %} 10 {% set offset = 1 %}
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 exception = ToDart("Failed to fetch domWindow"); 328 exception = ToDart("Failed to fetch domWindow");
329 goto fail; 329 goto fail;
330 } 330 }
331 Document& document = *domWindow->document(); 331 Document& document = *domWindow->document();
332 {% endif %} 332 {% endif %}
333 int argCount /* FIXME(vsm): Remove this. */ ALLOW_UNUSED = Dart_GetNativ eArgumentCount(args); 333 int argCount /* FIXME(vsm): Remove this. */ ALLOW_UNUSED = Dart_GetNativ eArgumentCount(args);
334 {% if constructor.has_exception_state %} 334 {% if constructor.has_exception_state %}
335 ExceptionState es; 335 ExceptionState es;
336 {% endif %} 336 {% endif %}
337 {{generate_arguments(constructor) | indent(8)}} 337 {{generate_arguments(constructor) | indent(8)}}
338 {{callback_return(constructor, constructor.dart_set_return_value, constr uctor.cpp_value) | indent(8)}} 338 {{constructor.cpp_value}}->AssociateWithDartWrapper(args);
339 {% if constructor.has_exception_state %} 339 {% if constructor.has_exception_state %}
340 if (es.had_exception()) { 340 if (es.had_exception()) {
341 exception = es.GetDartException(args, {{constructor.auto_scope}}); 341 exception = es.GetDartException(args, {{constructor.auto_scope}});
342 goto fail; 342 goto fail;
343 } 343 }
344 344
345 {% endif %} 345 {% endif %}
346 return; 346 return;
347 } 347 }
348 348
(...skipping 12 matching lines...) Expand all
361 { 361 {
362 Dart_SetReturnValue(args, Dart_Null()); 362 Dart_SetReturnValue(args, Dart_Null());
363 } 363 }
364 {% endmacro %} 364 {% endmacro %}
365 365
366 , 366 ,
367 {##############################################################################} 367 {##############################################################################}
368 {% macro generate_resolver_constructor(dart_class, class_name, constructor) %} 368 {% macro generate_resolver_constructor(dart_class, class_name, constructor) %}
369 {% for native_entry in constructor.native_entries %} 369 {% for native_entry in constructor.native_entries %}
370 {% set resolver_string = native_entry.resolver_string %} 370 {% set resolver_string = native_entry.resolver_string %}
371 {% set args_one_based = constructor.number_of_arguments + 1 %}
372 {% set args_required_one_based = constructor.number_of_required_arguments + 1 %}
371 {% if constructor.overload_index %} 373 {% if constructor.overload_index %}
372 {% set constructor_name = static_method_name(constructor.name) + "Dispatcher" %} 374 {% set constructor_name = static_method_name(constructor.name) + "Dispatcher" %}
373 {% else %} 375 {% else %}
374 {% set constructor_name = static_method_name(constructor.name) %} 376 {% set constructor_name = static_method_name(constructor.name) %}
375 {% endif %} 377 {% endif %}
376 {% if has_custom_constructor %} 378 {% if has_custom_constructor %}
377 if (name == "{{resolver_string}}") { 379 if (name == "{{resolver_string}}") {
378 {% elif constructor.number_of_arguments == constructor.number_of_required_argume nts %} 380 {% elif constructor.number_of_arguments == constructor.number_of_required_argume nts %}
379 if (argumentCount == {{constructor.number_of_arguments}} && name == "{{resolver_ string}}") { 381 if (argumentCount == {{args_one_based}} && name == "{{resolver_string}}") {
380 {% else %} 382 {% else %}
381 if (argumentCount >= {{constructor.number_of_required_arguments}} && argumentCou nt <= {{constructor.number_of_arguments}} && name == "{{resolver_string}}") { 383 if (argumentCount >= {{args_required_one_based}} && argumentCount <= {{args_one_ based}} && name == "{{resolver_string}}") {
382 {% endif %} 384 {% endif %}
383 *autoSetupScope = {{constructor.auto_scope}}; 385 *autoSetupScope = {{constructor.auto_scope}};
384 return {{dart_class}}Internal::{{constructor_name}}; 386 return {{dart_class}}Internal::{{constructor_name}};
385 } 387 }
386 {% endfor %} 388 {% endfor %}
387 {% endmacro %} 389 {% endmacro %}
388 390
389 {##############################################################################} 391 {##############################################################################}
390 {% macro generate_resolver_event_constructor(dart_class, class_name) %} 392 {% macro generate_resolver_event_constructor(dart_class, class_name) %}
391 {% set resolver_string = interface_name + "_constructorCallback" %} 393 {% set resolver_string = interface_name + "_constructorCallback" %}
392 if (argumentCount == 2 && name == "{{resolver_string}}") { 394 if (argumentCount == 2 && name == "{{resolver_string}}") {
393 *autoSetupScope = 1; 395 *autoSetupScope = 1;
394 return {{dart_class}}Internal::eventConstructorCallback; 396 return {{dart_class}}Internal::eventConstructorCallback;
395 } 397 }
396 {% endmacro %} 398 {% endmacro %}
397 399
398 {##############################################################################} 400 {##############################################################################}
399 {% macro generate_symbolizer_constructor(dart_class, class_name, constructor) %} 401 {% macro generate_symbolizer_constructor(dart_class, class_name, constructor) %}
400 {% for native_entry in constructor.native_entries %} 402 {% for native_entry in constructor.native_entries %}
401 {% set resolver_string = native_entry.resolver_string %} 403 {% set resolver_string = native_entry.resolver_string %}
402 if (native_function == {{dart_class}}Internal::{{static_method_name(constructor. name, constructor.overload_index)}}) { 404 if (native_function == {{dart_class}}Internal::{{static_method_name(constructor. name, constructor.overload_index)}}) {
403 return reinterpret_cast<const uint8_t*>("{{resolver_string}}"); 405 return reinterpret_cast<const uint8_t*>("{{resolver_string}}");
404 } 406 }
405 {% endfor %} 407 {% endfor %}
406 {% endmacro %} 408 {% endmacro %}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698