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

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

Issue 2595563004: Mojo JS bindings: fix enum array validation. (Closed)
Patch Set: . Created 4 years 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 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 element_size = pack.PackedField.GetSizeForKind(element_kind) 227 element_size = pack.PackedField.GetSizeForKind(element_kind)
228 expected_dimension_sizes = GetArrayExpectedDimensionSizes( 228 expected_dimension_sizes = GetArrayExpectedDimensionSizes(
229 field.kind) 229 field.kind)
230 element_type = ElementCodecType(element_kind) 230 element_type = ElementCodecType(element_kind)
231 return "%s, %s, %s, %s, 0" % \ 231 return "%s, %s, %s, %s, 0" % \
232 (element_size, element_type, nullable, 232 (element_size, element_type, nullable,
233 expected_dimension_sizes) 233 expected_dimension_sizes)
234 234
235 235
236 def JavaScriptValidateEnumParams(field): 236 def JavaScriptValidateEnumParams(field):
237 nullable = JavaScriptNullableParam(field)
238 enum_type = JavaScriptType(field.kind) 237 enum_type = JavaScriptType(field.kind)
239 return "%s, %s" % (enum_type, nullable) 238 return enum_type
Jay Civelli 2016/12/21 23:14:52 Nit: is the local var needed?
yzshen1 2016/12/21 23:17:36 Done.
240 239
241 def JavaScriptValidateStructParams(field): 240 def JavaScriptValidateStructParams(field):
242 nullable = JavaScriptNullableParam(field) 241 nullable = JavaScriptNullableParam(field)
243 struct_type = JavaScriptType(field.kind) 242 struct_type = JavaScriptType(field.kind)
244 return "%s, %s" % (struct_type, nullable) 243 return "%s, %s" % (struct_type, nullable)
245 244
246 def JavaScriptValidateUnionParams(field): 245 def JavaScriptValidateUnionParams(field):
247 nullable = JavaScriptNullableParam(field) 246 nullable = JavaScriptNullableParam(field)
248 union_type = JavaScriptType(field.kind) 247 union_type = JavaScriptType(field.kind)
249 return "%s, %s" % (union_type, nullable) 248 return "%s, %s" % (union_type, nullable)
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 return self.module.imports 411 return self.module.imports
413 412
414 def GetImportedInterfaces(self): 413 def GetImportedInterfaces(self):
415 interface_to_import = {}; 414 interface_to_import = {};
416 for each_import in self.module.imports: 415 for each_import in self.module.imports:
417 for each_interface in each_import["module"].interfaces: 416 for each_interface in each_import["module"].interfaces:
418 name = each_interface.name 417 name = each_interface.name
419 interface_to_import[name] = each_import["unique_name"] + "." + name 418 interface_to_import[name] = each_import["unique_name"] + "." + name
420 return interface_to_import; 419 return interface_to_import;
421 420
OLDNEW
« no previous file with comments | « mojo/public/js/validator.js ('k') | third_party/WebKit/LayoutTests/payments/resources/payment-request-mock.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698