| 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 # 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 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 195 | 195 |
| 196 | 196 |
| 197 class StructField(Field): pass | 197 class StructField(Field): pass |
| 198 | 198 |
| 199 | 199 |
| 200 class UnionField(Field): pass | 200 class UnionField(Field): pass |
| 201 | 201 |
| 202 | 202 |
| 203 class Struct(ReferenceKind): | 203 class Struct(ReferenceKind): |
| 204 ReferenceKind.AddSharedProperty('name') | 204 ReferenceKind.AddSharedProperty('name') |
| 205 ReferenceKind.AddSharedProperty('native_only') |
| 205 ReferenceKind.AddSharedProperty('module') | 206 ReferenceKind.AddSharedProperty('module') |
| 206 ReferenceKind.AddSharedProperty('imported_from') | 207 ReferenceKind.AddSharedProperty('imported_from') |
| 207 ReferenceKind.AddSharedProperty('fields') | 208 ReferenceKind.AddSharedProperty('fields') |
| 208 ReferenceKind.AddSharedProperty('attributes') | 209 ReferenceKind.AddSharedProperty('attributes') |
| 209 | 210 |
| 210 def __init__(self, name=None, module=None, attributes=None): | 211 def __init__(self, name=None, module=None, attributes=None): |
| 211 if name is not None: | 212 if name is not None: |
| 212 spec = 'x:' + name | 213 spec = 'x:' + name |
| 213 else: | 214 else: |
| 214 spec = None | 215 spec = None |
| 215 ReferenceKind.__init__(self, spec) | 216 ReferenceKind.__init__(self, spec) |
| 216 self.name = name | 217 self.name = name |
| 218 self.native_only = False |
| 217 self.module = module | 219 self.module = module |
| 218 self.imported_from = None | 220 self.imported_from = None |
| 219 self.fields = [] | 221 self.fields = [] |
| 220 self.attributes = attributes | 222 self.attributes = attributes |
| 221 | 223 |
| 222 def AddField(self, name, kind, ordinal=None, default=None, attributes=None): | 224 def AddField(self, name, kind, ordinal=None, default=None, attributes=None): |
| 223 field = StructField(name, kind, ordinal, default, attributes) | 225 field = StructField(name, kind, ordinal, default, attributes) |
| 224 self.fields.append(field) | 226 self.fields.append(field) |
| 225 return field | 227 return field |
| 226 | 228 |
| (...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 645 visited_kinds = set() | 647 visited_kinds = set() |
| 646 for method in interface.methods: | 648 for method in interface.methods: |
| 647 for param in method.parameters: | 649 for param in method.parameters: |
| 648 if _ContainsAssociatedKinds(param.kind, visited_kinds): | 650 if _ContainsAssociatedKinds(param.kind, visited_kinds): |
| 649 return True | 651 return True |
| 650 if method.response_parameters != None: | 652 if method.response_parameters != None: |
| 651 for param in method.response_parameters: | 653 for param in method.response_parameters: |
| 652 if _ContainsAssociatedKinds(param.kind, visited_kinds): | 654 if _ContainsAssociatedKinds(param.kind, visited_kinds): |
| 653 return True | 655 return True |
| 654 return False | 656 return False |
| OLD | NEW |