| 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 generates Dart APIs from the IDL database.""" |    6 """This module generates Dart APIs from the IDL database.""" | 
|    7  |    7  | 
|    8 import emitter |    8 import emitter | 
|    9 import idlnode |    9 import idlnode | 
|   10 import logging |   10 import logging | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
|   21     if not node.has_attribute(attribute): |   21     if not node.has_attribute(attribute): | 
|   22       node.attributes.append(attribute) |   22       node.attributes.append(attribute) | 
|   23  |   23  | 
|   24   node.constants.extend(other.constants) |   24   node.constants.extend(other.constants) | 
|   25  |   25  | 
|   26 class DartGenerator(object): |   26 class DartGenerator(object): | 
|   27   """Utilities to generate Dart APIs and corresponding JavaScript.""" |   27   """Utilities to generate Dart APIs and corresponding JavaScript.""" | 
|   28  |   28  | 
|   29   def __init__(self, logging_level=logging.WARNING): |   29   def __init__(self, logging_level=logging.WARNING): | 
|   30     self._auxiliary_files = {} |   30     self._auxiliary_files = {} | 
|   31     self._dart_templates_re = re.compile(r'[\w.:]+<([\w\.<>:]+)>') |   31     self._dart_templates_re = re.compile(r'[\w.:]+<([\w \.<>:]+)>') | 
|   32     _logger.setLevel(logging_level) |   32     _logger.setLevel(logging_level) | 
|   33  |   33  | 
|   34   def _StripModules(self, type_name): |   34   def _StripModules(self, type_name): | 
|   35     return type_name.split('::')[-1] |   35     return type_name.split('::')[-1] | 
|   36  |   36  | 
|   37   def _IsCompoundType(self, database, type_name): |   37   def _IsCompoundType(self, database, type_name): | 
|   38     if IsRegisteredType(type_name): |   38     if IsRegisteredType(type_name): | 
|   39       return True |   39       return True | 
|   40  |   40  | 
|   41     if type_name.endswith('?'): |   41     if type_name.endswith('?'): | 
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  222         # Create fake EventTarget parent interface for interfaces that have |  222         # Create fake EventTarget parent interface for interfaces that have | 
|  223         # 'EventTarget' extended attribute. |  223         # 'EventTarget' extended attribute. | 
|  224         ast = [('Annotation', [('Id', 'WebKit')]), |  224         ast = [('Annotation', [('Id', 'WebKit')]), | 
|  225                ('InterfaceType', ('ScopedName', 'EventTarget'))] |  225                ('InterfaceType', ('ScopedName', 'EventTarget'))] | 
|  226         interface.parents.append(idlnode.IDLParentInterface(ast)) |  226         interface.parents.append(idlnode.IDLParentInterface(ast)) | 
|  227  |  227  | 
|  228   def AddMissingArguments(self, database): |  228   def AddMissingArguments(self, database): | 
|  229     ARG = idlnode.IDLArgument([('Type', ('ScopedName', 'object')), ('Id', 'arg')
     ]) |  229     ARG = idlnode.IDLArgument([('Type', ('ScopedName', 'object')), ('Id', 'arg')
     ]) | 
|  230     for interface in database.GetInterfaces(): |  230     for interface in database.GetInterfaces(): | 
|  231       for operation in interface.operations: |  231       for operation in interface.operations: | 
|  232         call_with = (operation.ext_attrs.get('CallWith', '').split('|') + |  232         call_with = (operation.ext_attrs.get('CallWith', '') + | 
|  233                      operation.ext_attrs.get('ConstructorCallWith', '').split('|
     ') + |  233                      operation.ext_attrs.get('ConstructorCallWith', '')) | 
|  234                      operation.ext_attrs.get('CallWith', '').split('&') + |  | 
|  235                      operation.ext_attrs.get('ConstructorCallWith', '').split('&
     ')) |  | 
|  236         if 'ScriptArguments' in call_with: |  234         if 'ScriptArguments' in call_with: | 
|  237           operation.arguments.append(ARG) |  235           operation.arguments.append(ARG) | 
| OLD | NEW |