| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 2 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 3 # for details. All rights reserved. Use of this source code is governed by a | 3 # for details. All rights reserved. Use of this source code is governed by a |
| 4 # BSD-style license that can be found in the LICENSE file. | 4 # BSD-style license that can be found in the LICENSE file. |
| 5 | 5 |
| 6 """This module provides shared functionality for the systems to generate | 6 """This module provides shared functionality for the systems to generate |
| 7 native binding from the IDL database.""" | 7 native binding from the IDL database.""" |
| 8 | 8 |
| 9 import emitter | 9 import emitter |
| 10 import os | 10 import os |
| (...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 370 to_native_emitter = emitter.Emitter() | 370 to_native_emitter = emitter.Emitter() |
| 371 if self._interface_type_info.custom_to_native(): | 371 if self._interface_type_info.custom_to_native(): |
| 372 return_type = 'PassRefPtr<NativeType>' | 372 return_type = 'PassRefPtr<NativeType>' |
| 373 to_native_body = ';' | 373 to_native_body = ';' |
| 374 to_native_arg_body = ';' | 374 to_native_arg_body = ';' |
| 375 else: | 375 else: |
| 376 return_type = 'NativeType*' | 376 return_type = 'NativeType*' |
| 377 to_native_body = emitter.Format( | 377 to_native_body = emitter.Format( |
| 378 '\n' | 378 '\n' |
| 379 ' {\n' | 379 ' {\n' |
| 380 ' return DartDOMWrapper::unwrapDartWrapper<Dart$INTERFACE>(hand
le, exception);\n' | 380 ' DartDOMData* domData = DartDOMData::current();\n' |
| 381 ' return DartDOMWrapper::unwrapDartWrapper<Dart$INTERFACE>(domD
ata, handle, exception);\n' |
| 381 ' }', | 382 ' }', |
| 382 INTERFACE=self._interface.id) | 383 INTERFACE=self._interface.id) |
| 383 to_native_arg_body = emitter.Format( | 384 to_native_arg_body = emitter.Format( |
| 384 '\n' | 385 '\n' |
| 385 ' {\n' | 386 ' {\n' |
| 386 ' return DartDOMWrapper::unwrapDartWrapper<Dart$INTERFACE>(args
, index, exception);\n' | 387 ' return DartDOMWrapper::unwrapDartWrapper<Dart$INTERFACE>(args
, index, exception);\n' |
| 387 ' }', | 388 ' }', |
| 388 INTERFACE=self._interface.id) | 389 INTERFACE=self._interface.id) |
| 389 | 390 |
| 390 to_native_emitter.Emit( | 391 to_native_emitter.Emit( |
| (...skipping 791 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1182 ' if (Dart_NativeFunction func = $CLASS_NAME::resolver(name, argu
mentCount))\n' | 1183 ' if (Dart_NativeFunction func = $CLASS_NAME::resolver(name, argu
mentCount))\n' |
| 1183 ' return func;\n', | 1184 ' return func;\n', |
| 1184 CLASS_NAME=os.path.splitext(os.path.basename(path))[0]) | 1185 CLASS_NAME=os.path.splitext(os.path.basename(path))[0]) |
| 1185 | 1186 |
| 1186 def _IsOptionalStringArgumentInInitEventMethod(interface, operation, argument): | 1187 def _IsOptionalStringArgumentInInitEventMethod(interface, operation, argument): |
| 1187 return ( | 1188 return ( |
| 1188 interface.id.endswith('Event') and | 1189 interface.id.endswith('Event') and |
| 1189 operation.id.startswith('init') and | 1190 operation.id.startswith('init') and |
| 1190 argument.ext_attrs.get('Default') == 'Undefined' and | 1191 argument.ext_attrs.get('Default') == 'Undefined' and |
| 1191 argument.type.id == 'DOMString') | 1192 argument.type.id == 'DOMString') |
| OLD | NEW |