Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(144)

Side by Side Diff: mojo/public/tools/bindings/generators/mojom_js_generator.py

Issue 2259283003: Mojo C++ bindings: share DataView class between chromium and blink variants. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@92_change_traits_param
Patch Set: . Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 324
325 def IsMapPointerField(field): 325 def IsMapPointerField(field):
326 return mojom.IsMapKind(field.kind) 326 return mojom.IsMapKind(field.kind)
327 327
328 def IsHandleField(field): 328 def IsHandleField(field):
329 return mojom.IsAnyHandleKind(field.kind) 329 return mojom.IsAnyHandleKind(field.kind)
330 330
331 def IsInterfaceField(field): 331 def IsInterfaceField(field):
332 return mojom.IsInterfaceKind(field.kind) 332 return mojom.IsInterfaceKind(field.kind)
333 333
334 def IsInterfaceRequestField(field):
335 return mojom.IsInterfaceRequestKind(field.kind)
336
334 def IsUnionField(field): 337 def IsUnionField(field):
335 return mojom.IsUnionKind(field.kind) 338 return mojom.IsUnionKind(field.kind)
336 339
337 340
338 class Generator(generator.Generator): 341 class Generator(generator.Generator):
339 342
340 js_filters = { 343 js_filters = {
341 "default_value": JavaScriptDefaultValue, 344 "default_value": JavaScriptDefaultValue,
342 "payload_size": JavaScriptPayloadSize, 345 "payload_size": JavaScriptPayloadSize,
343 "decode_snippet": JavaScriptDecodeSnippet, 346 "decode_snippet": JavaScriptDecodeSnippet,
344 "encode_snippet": JavaScriptEncodeSnippet, 347 "encode_snippet": JavaScriptEncodeSnippet,
345 "union_decode_snippet": JavaScriptUnionDecodeSnippet, 348 "union_decode_snippet": JavaScriptUnionDecodeSnippet,
346 "union_encode_snippet": JavaScriptUnionEncodeSnippet, 349 "union_encode_snippet": JavaScriptUnionEncodeSnippet,
347 "expression_to_text": ExpressionToText, 350 "expression_to_text": ExpressionToText,
348 "field_offset": JavaScriptFieldOffset, 351 "field_offset": JavaScriptFieldOffset,
349 "has_callbacks": mojom.HasCallbacks, 352 "has_callbacks": mojom.HasCallbacks,
350 "is_array_pointer_field": IsArrayPointerField, 353 "is_array_pointer_field": IsArrayPointerField,
351 "is_map_pointer_field": IsMapPointerField, 354 "is_map_pointer_field": IsMapPointerField,
352 "is_struct_pointer_field": IsStructPointerField, 355 "is_struct_pointer_field": IsStructPointerField,
353 "is_string_pointer_field": IsStringPointerField, 356 "is_string_pointer_field": IsStringPointerField,
354 "is_union_field": IsUnionField, 357 "is_union_field": IsUnionField,
355 "is_handle_field": IsHandleField, 358 "is_handle_field": IsHandleField,
356 "is_interface_field": IsInterfaceField, 359 "is_interface_field": IsInterfaceField,
360 "is_interface_request_field": IsInterfaceRequestField,
357 "js_type": JavaScriptType, 361 "js_type": JavaScriptType,
358 "js_proxy_method_parameter_value": JavaScriptProxyMethodParameterValue, 362 "js_proxy_method_parameter_value": JavaScriptProxyMethodParameterValue,
359 "js_stub_method_parameter_value": JavaScriptStubMethodParameterValue, 363 "js_stub_method_parameter_value": JavaScriptStubMethodParameterValue,
360 "stylize_method": generator.StudlyCapsToCamel, 364 "stylize_method": generator.StudlyCapsToCamel,
361 "validate_array_params": JavaScriptValidateArrayParams, 365 "validate_array_params": JavaScriptValidateArrayParams,
362 "validate_handle_params": JavaScriptValidateHandleParams, 366 "validate_handle_params": JavaScriptValidateHandleParams,
363 "validate_interface_params": JavaScriptValidateInterfaceParams, 367 "validate_interface_params": JavaScriptValidateInterfaceParams,
364 "validate_map_params": JavaScriptValidateMapParams, 368 "validate_map_params": JavaScriptValidateMapParams,
365 "validate_string_params": JavaScriptValidateStringParams, 369 "validate_string_params": JavaScriptValidateStringParams,
366 "validate_struct_params": JavaScriptValidateStructParams, 370 "validate_struct_params": JavaScriptValidateStructParams,
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 return self.module.imports 422 return self.module.imports
419 423
420 def GetImportedInterfaces(self): 424 def GetImportedInterfaces(self):
421 interface_to_import = {}; 425 interface_to_import = {};
422 for each_import in self.module.imports: 426 for each_import in self.module.imports:
423 for each_interface in each_import["module"].interfaces: 427 for each_interface in each_import["module"].interfaces:
424 name = each_interface.name 428 name = each_interface.name
425 interface_to_import[name] = each_import["unique_name"] + "." + name 429 interface_to_import[name] = each_import["unique_name"] + "." + name
426 return interface_to_import; 430 return interface_to_import;
427 431
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698