| OLD | NEW |
| 1 {% from 'utilities.cpp.tmpl' import declare_enum_validation_variable %} | 1 {% from 'utilities.cpp.tmpl' import declare_enum_validation_variable %} |
| 2 {% from 'utilities.cpp.tmpl' import v8_value_to_local_cpp_value %} | 2 {% from 'utilities.cpp.tmpl' import v8_value_to_local_cpp_value %} |
| 3 {#############################################################################} | 3 {#############################################################################} |
| 4 {% macro assign_and_return_if_hasinstance(member) %} | 4 {% macro assign_and_return_if_hasinstance(member) %} |
| 5 {% if member.is_array_buffer_or_view_type %} | 5 {% if member.is_array_buffer_or_view_type %} |
| 6 if (v8Value->Is{{member.type_name}}()) { | 6 if (v8Value->Is{{member.type_name}}()) { |
| 7 {% else %} | 7 {% else %} |
| 8 if (V8{{member.type_name}}::hasInstance(v8Value, isolate)) { | 8 if (V8{{member.type_name}}::hasInstance(v8Value, isolate)) { |
| 9 {% endif %} | 9 {% endif %} |
| 10 {% if member.is_array_buffer_view_or_typed_array %} | 10 {% if member.is_array_buffer_view_or_typed_array %} |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 | 102 |
| 103 {% endif %} | 103 {% endif %} |
| 104 {# 9., 10. ArrayBufferView #} | 104 {# 9., 10. ArrayBufferView #} |
| 105 {# FIXME: Individual typed arrays (e.g. Uint8Array) aren\'t supported yet. #} | 105 {# FIXME: Individual typed arrays (e.g. Uint8Array) aren\'t supported yet. #} |
| 106 {% if array_buffer_view_type %} | 106 {% if array_buffer_view_type %} |
| 107 {{assign_and_return_if_hasinstance(array_buffer_view_type) | indent(2)}} | 107 {{assign_and_return_if_hasinstance(array_buffer_view_type) | indent(2)}} |
| 108 | 108 |
| 109 {% endif %} | 109 {% endif %} |
| 110 {% if array_or_sequence_type %} | 110 {% if array_or_sequence_type %} |
| 111 {# 11.1, 11.2. Arrays and Sequences #} | 111 {# 11.1, 11.2. Arrays and Sequences #} |
| 112 {# FIXME: This should also check "object but not RegExp". Add checks | 112 if (IsV8Sequence(isolate, v8Value, exceptionState)) { |
| 113 when we implement conversions for Date and RegExp. #} | |
| 114 {# TODO(bashi): Should check @@iterator symbol instead. #} | |
| 115 if (v8Value->IsArray()) { | |
| 116 {{v8_value_to_local_cpp_value(array_or_sequence_type) | indent}} | 113 {{v8_value_to_local_cpp_value(array_or_sequence_type) | indent}} |
| 117 impl.set{{array_or_sequence_type.type_name}}(cppValue); | 114 impl.set{{array_or_sequence_type.type_name}}(cppValue); |
| 118 return; | 115 return; |
| 119 } | 116 } |
| 120 | 117 |
| 121 {% endif %} | 118 {% endif %} |
| 122 {% if dictionary_type %} | 119 {% if dictionary_type %} |
| 123 {# 11.3. Dictionaries #} | 120 {# 11.3. Dictionaries #} |
| 124 if (v8Value->IsObject()) { | 121 if (v8Value->IsObject()) { |
| 125 {{v8_value_to_local_cpp_value(dictionary_type) | indent}} | 122 {{v8_value_to_local_cpp_value(dictionary_type) | indent}} |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 217 | 214 |
| 218 {{cpp_class}} NativeValueTraits<{{cpp_class}}>::NativeValue(v8::Isolate* isolate
, v8::Local<v8::Value> value, ExceptionState& exceptionState) { | 215 {{cpp_class}} NativeValueTraits<{{cpp_class}}>::NativeValue(v8::Isolate* isolate
, v8::Local<v8::Value> value, ExceptionState& exceptionState) { |
| 219 {{cpp_class}} impl; | 216 {{cpp_class}} impl; |
| 220 {{v8_class}}::toImpl(isolate, value, impl, UnionTypeConversionMode::kNotNullab
le, exceptionState); | 217 {{v8_class}}::toImpl(isolate, value, impl, UnionTypeConversionMode::kNotNullab
le, exceptionState); |
| 221 return impl; | 218 return impl; |
| 222 } | 219 } |
| 223 | 220 |
| 224 } // namespace blink | 221 } // namespace blink |
| 225 | 222 |
| 226 {% endfilter %}{# format_blink_cpp_source_code #} | 223 {% endfilter %}{# format_blink_cpp_source_code #} |
| OLD | NEW |