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

Side by Side Diff: mojo/public/tools/bindings/pylib/mojom/generate/module.py

Issue 468713002: JavaScript bindings for Mojo message validation (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Updates per yzshen's second round of feedback Created 6 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 | Annotate | Revision Log
« no previous file with comments | « mojo/public/tools/bindings/generators/mojom_js_generator.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 # This module's classes provide an interface to mojo modules. Modules are 5 # This module's classes provide an interface to mojo modules. Modules are
6 # collections of interfaces and structs to be used by mojo ipc clients and 6 # collections of interfaces and structs to be used by mojo ipc clients and
7 # servers. 7 # servers.
8 # 8 #
9 # A simple interface would be created this way: 9 # A simple interface would be created this way:
10 # module = mojom.generate.module.Module('Foo') 10 # module = mojom.generate.module.Module('Foo')
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 self.module = module 273 self.module = module
274 self.name = name 274 self.name = name
275 self.imported_from = None 275 self.imported_from = None
276 self.client = client 276 self.client = client
277 self.methods = [] 277 self.methods = []
278 278
279 def AddMethod(self, name, ordinal=None): 279 def AddMethod(self, name, ordinal=None):
280 method = Method(self, name, ordinal=ordinal) 280 method = Method(self, name, ordinal=ordinal)
281 self.methods.append(method) 281 self.methods.append(method)
282 return method 282 return method
283 283
yzshen1 2014/08/15 16:26:36 It is intended to have two empty lines according t
284
285 class EnumField(object): 284 class EnumField(object):
286 def __init__(self, name=None, value=None): 285 def __init__(self, name=None, value=None):
287 self.name = name 286 self.name = name
288 self.value = value 287 self.value = value
289 288
290 289
291 class Enum(Kind): 290 class Enum(Kind):
292 def __init__(self, name=None, module=None): 291 def __init__(self, name=None, module=None):
293 self.module = module 292 self.module = module
294 self.name = name 293 self.name = name
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
393 392
394 393
395 def IsAnyHandleKind(kind): 394 def IsAnyHandleKind(kind):
396 return (IsNonInterfaceHandleKind(kind) or 395 return (IsNonInterfaceHandleKind(kind) or
397 IsInterfaceKind(kind) or 396 IsInterfaceKind(kind) or
398 IsInterfaceRequestKind(kind)) 397 IsInterfaceRequestKind(kind))
399 398
400 399
401 def IsMoveOnlyKind(kind): 400 def IsMoveOnlyKind(kind):
402 return IsObjectKind(kind) or IsAnyHandleKind(kind) 401 return IsObjectKind(kind) or IsAnyHandleKind(kind)
402
403
404 def HasCallbacks(interface):
405 for method in interface.methods:
406 if method.response_parameters != None:
407 return True
408 return False
409
OLDNEW
« no previous file with comments | « mojo/public/tools/bindings/generators/mojom_js_generator.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698