Index: Source/bindings/templates/methods.cpp |
diff --git a/Source/bindings/templates/methods.cpp b/Source/bindings/templates/methods.cpp |
index aadc5be57086e13773b483a2fc52c331ab8b9c61..46ad27b11b432b1797da01146adc5edec1fd6741 100644 |
--- a/Source/bindings/templates/methods.cpp |
+++ b/Source/bindings/templates/methods.cpp |
@@ -238,7 +238,7 @@ if (!{{method.cpp_value}}) |
{{cpp_value}}; |
{% elif method.is_constructor %} |
{{method.cpp_type}} impl = {{cpp_value}}; |
-{% elif method.use_local_result and not method.union_arguments %} |
+{% elif method.use_local_result and not method.union_result_members %} |
{{method.cpp_type}} result = {{cpp_value}}; |
{% endif %} |
{# Post-call #} |
@@ -251,7 +251,7 @@ if (exceptionState.hadException()) { |
{# Set return value #} |
{% if method.is_constructor %} |
{{generate_constructor_wrapper(method)}} |
-{%- elif method.union_arguments %} |
+{%- elif method.union_result_members %} |
{{union_type_method_call_and_set_return_value(method)}} |
{%- elif v8_set_return_value %} |
{% if method.is_explicit_nullable %} |
@@ -279,17 +279,15 @@ if (info.Length() >= {{argument_index}} + 1 && listener && !impl->toNode()) |
{######################################} |
{% macro union_type_method_call_and_set_return_value(method) %} |
Jens Widell
2014/10/28 11:31:38
Could the scope of this macro now be reduced to ju
bashi
2014/10/29 01:34:32
Took the later approach, and removed special code
|
-{% for argument in method.union_arguments %} |
-{{argument.cpp_type}} {{argument.cpp_value}}{{argument.cpp_type_initializer}}; |
-{% endfor %} |
+{{method.cpp_type}} result; |
{{method.cpp_value}}; |
{% if method.is_null_expression %}{# used by getters #} |
if ({{method.is_null_expression}}) |
return; |
{% endif %} |
-{% for argument in method.union_arguments %} |
-if ({{argument.null_check_value}}) { |
- {{argument.v8_set_return_value}}; |
+{% for member in method.union_result_members %} |
+if ({{member.null_check_value}}) { |
+ {{member.v8_set_return_value}}; |
return; |
} |
{% endfor %} |