| OLD | NEW |
| 1 # Copyright (C) 2013 Google Inc. All rights reserved. | 1 # Copyright (C) 2013 Google Inc. All rights reserved. |
| 2 # coding=utf-8 | 2 # coding=utf-8 |
| 3 # | 3 # |
| 4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
| 5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
| 6 # met: | 6 # met: |
| 7 # | 7 # |
| 8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
| 9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
| 10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
| (...skipping 1234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1245 if idl_type.use_output_parameter_for_result: | 1245 if idl_type.use_output_parameter_for_result: |
| 1246 return 'result.isNull()' | 1246 return 'result.isNull()' |
| 1247 if idl_type.is_string_type: | 1247 if idl_type.is_string_type: |
| 1248 return 'result.isNull()' | 1248 return 'result.isNull()' |
| 1249 if idl_type.is_interface_type: | 1249 if idl_type.is_interface_type: |
| 1250 return '!result' | 1250 return '!result' |
| 1251 if idl_type.base_type in ('any', 'object'): | 1251 if idl_type.base_type in ('any', 'object'): |
| 1252 return 'result.isEmpty()' | 1252 return 'result.isEmpty()' |
| 1253 return '' | 1253 return '' |
| 1254 | 1254 |
| 1255 extended_attributes = getter.extended_attributes |
| 1255 idl_type = getter.idl_type | 1256 idl_type = getter.idl_type |
| 1256 extended_attributes = getter.extended_attributes | 1257 idl_type.add_includes_for_type(extended_attributes) |
| 1257 is_call_with_script_state = v8_utilities.has_extended_attribute_value(getter
, 'CallWith', 'ScriptState') | 1258 is_call_with_script_state = v8_utilities.has_extended_attribute_value(getter
, 'CallWith', 'ScriptState') |
| 1258 is_raises_exception = 'RaisesException' in extended_attributes | 1259 is_raises_exception = 'RaisesException' in extended_attributes |
| 1259 use_output_parameter_for_result = idl_type.use_output_parameter_for_result | 1260 use_output_parameter_for_result = idl_type.use_output_parameter_for_result |
| 1260 | 1261 |
| 1261 # FIXME: make more generic, so can use v8_methods.cpp_value | 1262 # FIXME: make more generic, so can use v8_methods.cpp_value |
| 1262 cpp_method_name = 'impl->%s' % cpp_name(getter) | 1263 cpp_method_name = 'impl->%s' % cpp_name(getter) |
| 1263 | 1264 |
| 1264 if is_call_with_script_state: | 1265 if is_call_with_script_state: |
| 1265 cpp_arguments.insert(0, 'scriptState') | 1266 cpp_arguments.insert(0, 'scriptState') |
| 1266 if is_raises_exception: | 1267 if is_raises_exception: |
| (...skipping 22 matching lines...) Expand all Loading... |
| 1289 'name': cpp_name(getter), | 1290 'name': cpp_name(getter), |
| 1290 'use_output_parameter_for_result': use_output_parameter_for_result, | 1291 'use_output_parameter_for_result': use_output_parameter_for_result, |
| 1291 'v8_set_return_value': idl_type.v8_set_return_value('result', extended_a
ttributes=extended_attributes, script_wrappable='impl', release=idl_type.release
), | 1292 'v8_set_return_value': idl_type.v8_set_return_value('result', extended_a
ttributes=extended_attributes, script_wrappable='impl', release=idl_type.release
), |
| 1292 } | 1293 } |
| 1293 | 1294 |
| 1294 | 1295 |
| 1295 def property_setter(setter, interface): | 1296 def property_setter(setter, interface): |
| 1296 if not setter: | 1297 if not setter: |
| 1297 return None | 1298 return None |
| 1298 | 1299 |
| 1300 extended_attributes = setter.extended_attributes |
| 1299 idl_type = setter.arguments[1].idl_type | 1301 idl_type = setter.arguments[1].idl_type |
| 1300 extended_attributes = setter.extended_attributes | 1302 idl_type.add_includes_for_type(extended_attributes) |
| 1301 is_call_with_script_state = v8_utilities.has_extended_attribute_value(setter
, 'CallWith', 'ScriptState') | 1303 is_call_with_script_state = v8_utilities.has_extended_attribute_value(setter
, 'CallWith', 'ScriptState') |
| 1302 is_raises_exception = 'RaisesException' in extended_attributes | 1304 is_raises_exception = 'RaisesException' in extended_attributes |
| 1303 | 1305 |
| 1304 # [TypeChecking=Interface] / [LegacyInterfaceTypeChecking] | 1306 # [TypeChecking=Interface] / [LegacyInterfaceTypeChecking] |
| 1305 has_type_checking_interface = ( | 1307 has_type_checking_interface = ( |
| 1306 not is_legacy_interface_type_checking(interface, setter) and | 1308 not is_legacy_interface_type_checking(interface, setter) and |
| 1307 idl_type.is_wrapper_type) | 1309 idl_type.is_wrapper_type) |
| 1308 | 1310 |
| 1309 return { | 1311 return { |
| 1310 'has_exception_state': (is_raises_exception or | 1312 'has_exception_state': (is_raises_exception or |
| 1311 idl_type.v8_conversion_needs_exception_state), | 1313 idl_type.v8_conversion_needs_exception_state), |
| 1312 'has_type_checking_interface': has_type_checking_interface, | 1314 'has_type_checking_interface': has_type_checking_interface, |
| 1313 'idl_type': idl_type.base_type, | 1315 'idl_type': idl_type.base_type, |
| 1314 'is_call_with_script_state': is_call_with_script_state, | 1316 'is_call_with_script_state': is_call_with_script_state, |
| 1315 'is_custom': 'Custom' in extended_attributes, | 1317 'is_custom': 'Custom' in extended_attributes, |
| 1316 'is_nullable': idl_type.is_nullable, | 1318 'is_nullable': idl_type.is_nullable, |
| 1317 'is_raises_exception': is_raises_exception, | 1319 'is_raises_exception': is_raises_exception, |
| 1318 'name': cpp_name(setter), | 1320 'name': cpp_name(setter), |
| 1319 'v8_value_to_local_cpp_value': idl_type.v8_value_to_local_cpp_value( | 1321 'v8_value_to_local_cpp_value': idl_type.v8_value_to_local_cpp_value( |
| 1320 extended_attributes, 'v8Value', 'propertyValue'), | 1322 extended_attributes, 'v8Value', 'propertyValue'), |
| 1321 } | 1323 } |
| 1322 | 1324 |
| 1323 | 1325 |
| 1324 def property_deleter(deleter): | 1326 def property_deleter(deleter): |
| 1325 if not deleter: | 1327 if not deleter: |
| 1326 return None | 1328 return None |
| 1327 | 1329 |
| 1330 extended_attributes = deleter.extended_attributes |
| 1328 idl_type = deleter.idl_type | 1331 idl_type = deleter.idl_type |
| 1329 extended_attributes = deleter.extended_attributes | |
| 1330 is_call_with_script_state = v8_utilities.has_extended_attribute_value(delete
r, 'CallWith', 'ScriptState') | 1332 is_call_with_script_state = v8_utilities.has_extended_attribute_value(delete
r, 'CallWith', 'ScriptState') |
| 1331 return { | 1333 return { |
| 1332 'is_call_with_script_state': is_call_with_script_state, | 1334 'is_call_with_script_state': is_call_with_script_state, |
| 1333 'is_custom': 'Custom' in extended_attributes, | 1335 'is_custom': 'Custom' in extended_attributes, |
| 1334 'is_raises_exception': 'RaisesException' in extended_attributes, | 1336 'is_raises_exception': 'RaisesException' in extended_attributes, |
| 1335 'name': cpp_name(deleter), | 1337 'name': cpp_name(deleter), |
| 1336 } | 1338 } |
| OLD | NEW |