| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 """Generates Python source files from a mojom.Module.""" | 5 """Generates Python source files from a mojom.Module.""" |
| 6 | 6 |
| 7 import re | 7 import re |
| 8 from itertools import ifilter | 8 from itertools import ifilter |
| 9 | 9 |
| 10 import mojom.generate.generator as generator | 10 import mojom.generate.generator as generator |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 'struct_from_method': GetStructFromMethod, | 291 'struct_from_method': GetStructFromMethod, |
| 292 } | 292 } |
| 293 | 293 |
| 294 @UseJinja('python_templates/module.py.tmpl', filters=python_filters) | 294 @UseJinja('python_templates/module.py.tmpl', filters=python_filters) |
| 295 def GeneratePythonModule(self): | 295 def GeneratePythonModule(self): |
| 296 return { | 296 return { |
| 297 'enums': self.module.enums, | 297 'enums': self.module.enums, |
| 298 'imports': self.GetImports(), | 298 'imports': self.GetImports(), |
| 299 'interfaces': self.GetQualifiedInterfaces(), | 299 'interfaces': self.GetQualifiedInterfaces(), |
| 300 'module': ComputeStaticValues(self.module), | 300 'module': ComputeStaticValues(self.module), |
| 301 'namespace': self.module.namespace, | |
| 302 'structs': self.GetStructs(), | 301 'structs': self.GetStructs(), |
| 303 } | 302 } |
| 304 | 303 |
| 305 def GenerateFiles(self, args): | 304 def GenerateFiles(self, args): |
| 306 import_path = MojomToPythonImport(self.module.name) | 305 import_path = MojomToPythonImport(self.module.name) |
| 307 self.Write(self.GeneratePythonModule(), | 306 self.Write(self.GeneratePythonModule(), |
| 308 self.MatchMojomFilePath('%s.py' % import_path)) | 307 self.MatchMojomFilePath('%s.py' % import_path)) |
| 309 | 308 |
| 310 def GetImports(self): | 309 def GetImports(self): |
| 311 for each in self.module.imports: | 310 for each in self.module.imports: |
| (...skipping 18 matching lines...) Expand all Loading... |
| 330 'Unable to find interface %s declared as client of %s.' % | 329 'Unable to find interface %s declared as client of %s.' % |
| 331 (interface.client, interface.name)) | 330 (interface.client, interface.name)) |
| 332 interface.qualified_client = interfaces_by_name[interface.client] | 331 interface.qualified_client = interfaces_by_name[interface.client] |
| 333 return sorted(interfaces, key=lambda i: (bool(i.client), i.name)) | 332 return sorted(interfaces, key=lambda i: (bool(i.client), i.name)) |
| 334 | 333 |
| 335 def GetJinjaParameters(self): | 334 def GetJinjaParameters(self): |
| 336 return { | 335 return { |
| 337 'lstrip_blocks': True, | 336 'lstrip_blocks': True, |
| 338 'trim_blocks': True, | 337 'trim_blocks': True, |
| 339 } | 338 } |
| OLD | NEW |