| OLD | NEW |
| 1 {##############################################################################} | 1 {##############################################################################} |
| 2 {% macro attribute_getter(attribute, world_suffix) %} | 2 {% macro attribute_getter(attribute, world_suffix) %} |
| 3 {% filter conditional(attribute.conditional_string) %} | 3 {% filter conditional(attribute.conditional_string) %} |
| 4 static void {{attribute.name}}AttributeGetter{{world_suffix}}( | 4 static void {{attribute.name}}AttributeGetter{{world_suffix}}( |
| 5 {%- if attribute.is_expose_js_accessors %} | 5 {%- if attribute.is_expose_js_accessors %} |
| 6 const v8::FunctionCallbackInfo<v8::Value>& info | 6 const v8::FunctionCallbackInfo<v8::Value>& info |
| 7 {%- else %} | 7 {%- else %} |
| 8 const v8::PropertyCallbackInfo<v8::Value>& info | 8 const v8::PropertyCallbackInfo<v8::Value>& info |
| 9 {%- endif %}) | 9 {%- endif %}) |
| 10 { | 10 { |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 {##############################################################################} | 117 {##############################################################################} |
| 118 {% macro attribute_setter(attribute, world_suffix) %} | 118 {% macro attribute_setter(attribute, world_suffix) %} |
| 119 {% filter conditional(attribute.conditional_string) %} | 119 {% filter conditional(attribute.conditional_string) %} |
| 120 static void {{attribute.name}}AttributeSetter{{world_suffix}}( | 120 static void {{attribute.name}}AttributeSetter{{world_suffix}}( |
| 121 {%- if attribute.is_expose_js_accessors %} | 121 {%- if attribute.is_expose_js_accessors %} |
| 122 v8::Local<v8::Value> jsValue, const v8::FunctionCallbackInfo<v8::Value>& info | 122 v8::Local<v8::Value> jsValue, const v8::FunctionCallbackInfo<v8::Value>& info |
| 123 {%- else %} | 123 {%- else %} |
| 124 v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info | 124 v8::Local<v8::Value> jsValue, const v8::PropertyCallbackInfo<void>& info |
| 125 {%- endif %}) | 125 {%- endif %}) |
| 126 { | 126 { |
| 127 {% if attribute.is_setter_raises_exception or | 127 {% if attribute.has_setter_exception_state %} |
| 128 attribute.has_strict_type_checking %} | |
| 129 ExceptionState exceptionState(ExceptionState::SetterContext, "{{attribute.na
me}}", "{{interface_name}}", info.Holder(), info.GetIsolate()); | 128 ExceptionState exceptionState(ExceptionState::SetterContext, "{{attribute.na
me}}", "{{interface_name}}", info.Holder(), info.GetIsolate()); |
| 130 {% endif %} | 129 {% endif %} |
| 131 {% if attribute.has_strict_type_checking %} | 130 {% if attribute.has_strict_type_checking %} |
| 132 {# Type checking for interface types (if interface not implemented, throw | 131 {# Type checking for interface types (if interface not implemented, throw |
| 133 TypeError), per http://www.w3.org/TR/WebIDL/#es-interface #} | 132 TypeError), per http://www.w3.org/TR/WebIDL/#es-interface #} |
| 134 if (!isUndefinedOrNull(jsValue) && !V8{{attribute.idl_type}}::hasInstance(js
Value, info.GetIsolate(), worldType(info.GetIsolate()))) { | 133 if (!isUndefinedOrNull(jsValue) && !V8{{attribute.idl_type}}::hasInstance(js
Value, info.GetIsolate(), worldType(info.GetIsolate()))) { |
| 135 exceptionState.throwTypeError("The provided value is not of type '{{attr
ibute.idl_type}}'."); | 134 exceptionState.throwTypeError("The provided value is not of type '{{attr
ibute.idl_type}}'."); |
| 136 exceptionState.throwIfNeeded(); | 135 exceptionState.throwIfNeeded(); |
| 137 return; | 136 return; |
| 138 } | 137 } |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 205 {% endif %} | 204 {% endif %} |
| 206 {% if attribute.has_custom_setter %} | 205 {% if attribute.has_custom_setter %} |
| 207 {{v8_class}}::{{attribute.name}}AttributeSetterCustom(jsValue, info); | 206 {{v8_class}}::{{attribute.name}}AttributeSetterCustom(jsValue, info); |
| 208 {% else %} | 207 {% else %} |
| 209 {{cpp_class}}V8Internal::{{attribute.name}}AttributeSetter{{world_suffix}}(j
sValue, info); | 208 {{cpp_class}}V8Internal::{{attribute.name}}AttributeSetter{{world_suffix}}(j
sValue, info); |
| 210 {% endif %} | 209 {% endif %} |
| 211 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); | 210 TRACE_EVENT_SET_SAMPLING_STATE("V8", "Execution"); |
| 212 } | 211 } |
| 213 {% endfilter %} | 212 {% endfilter %} |
| 214 {% endmacro %} | 213 {% endmacro %} |
| OLD | NEW |