OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 JavaScript source files from a mojom.Module.""" | 5 """Generates JavaScript source files from a mojom.Module.""" |
6 | 6 |
7 import mojom.generate.generator as generator | 7 import mojom.generate.generator as generator |
8 import mojom.generate.module as mojom | 8 import mojom.generate.module as mojom |
9 import mojom.generate.pack as pack | 9 import mojom.generate.pack as pack |
10 from mojom.generate.template_expander import UseJinja | 10 from mojom.generate.template_expander import UseJinja |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 nullable = JavaScriptNullableParam(field) | 268 nullable = JavaScriptNullableParam(field) |
269 return "%s" % (nullable) | 269 return "%s" % (nullable) |
270 | 270 |
271 def JavaScriptValidateInterfaceParams(field): | 271 def JavaScriptValidateInterfaceParams(field): |
272 return JavaScriptValidateHandleParams(field) | 272 return JavaScriptValidateHandleParams(field) |
273 | 273 |
274 def JavaScriptProxyMethodParameterValue(parameter): | 274 def JavaScriptProxyMethodParameterValue(parameter): |
275 name = parameter.name; | 275 name = parameter.name; |
276 if (mojom.IsInterfaceKind(parameter.kind)): | 276 if (mojom.IsInterfaceKind(parameter.kind)): |
277 type = JavaScriptType(parameter.kind) | 277 type = JavaScriptType(parameter.kind) |
278 return "core.isHandle(%s) ? %s : connection.bindImpl" \ | 278 return "%s instanceof MojoHandle ? %s : connection.bindImpl" \ |
279 "(%s, %s)" % (name, name, name, type) | 279 "(%s, %s)" % (name, name, name, type) |
280 if (mojom.IsInterfaceRequestKind(parameter.kind)): | 280 if (mojom.IsInterfaceRequestKind(parameter.kind)): |
281 type = JavaScriptType(parameter.kind.kind) | 281 type = JavaScriptType(parameter.kind.kind) |
282 return "core.isHandle(%s) ? %s : connection.bindProxy" \ | 282 return "%s instanceof MojoHandle ? %s : connection.bindProxy" \ |
283 "(%s, %s)" % (name, name, name, type) | 283 "(%s, %s)" % (name, name, name, type) |
284 return name; | 284 return name; |
285 | 285 |
286 | 286 |
287 def JavaScriptStubMethodParameterValue(parameter): | 287 def JavaScriptStubMethodParameterValue(parameter): |
288 name = parameter.name; | 288 name = parameter.name; |
289 if (mojom.IsInterfaceKind(parameter.kind)): | 289 if (mojom.IsInterfaceKind(parameter.kind)): |
290 type = JavaScriptType(parameter.kind) | 290 type = JavaScriptType(parameter.kind) |
291 return "connection.bindHandleToProxy(%s, %s)" % (name, type) | 291 return "connection.bindHandleToProxy(%s, %s)" % (name, type) |
292 if (mojom.IsInterfaceRequestKind(parameter.kind)): | 292 if (mojom.IsInterfaceRequestKind(parameter.kind)): |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
453 return self.module.imports | 453 return self.module.imports |
454 | 454 |
455 def GetImportedInterfaces(self): | 455 def GetImportedInterfaces(self): |
456 interface_to_import = {}; | 456 interface_to_import = {}; |
457 for each_import in self.module.imports: | 457 for each_import in self.module.imports: |
458 for each_interface in each_import["module"].interfaces: | 458 for each_interface in each_import["module"].interfaces: |
459 name = each_interface.name | 459 name = each_interface.name |
460 interface_to_import[name] = each_import["unique_name"] + "." + name | 460 interface_to_import[name] = each_import["unique_name"] + "." + name |
461 return interface_to_import; | 461 return interface_to_import; |
462 | 462 |
OLD | NEW |