OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 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 # mojom's classes provide an interface to mojo modules. Modules are collections | 5 # mojom's classes provide an interface to mojo modules. Modules are collections |
6 # of interfaces and structs to be used by mojo ipc clients and servers. | 6 # of interfaces and structs to be used by mojo ipc clients and servers. |
7 # | 7 # |
8 # A simple interface would be created this way: | 8 # A simple interface would be created this way: |
9 # module = mojom.Module('Foo') | 9 # module = mojom.Module('Foo') |
10 # interface = module.AddInterface('Bar') | 10 # interface = module.AddInterface('Bar') |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 self.ordinal = ordinal | 97 self.ordinal = ordinal |
98 self.parameters = [] | 98 self.parameters = [] |
99 | 99 |
100 def AddParameter(self, name, kind, ordinal = None, default = None): | 100 def AddParameter(self, name, kind, ordinal = None, default = None): |
101 parameter = Parameter(name, kind, ordinal, default) | 101 parameter = Parameter(name, kind, ordinal, default) |
102 self.parameters.append(parameter) | 102 self.parameters.append(parameter) |
103 return parameter | 103 return parameter |
104 | 104 |
105 | 105 |
106 class Interface(object): | 106 class Interface(object): |
107 def __init__(self, name = None): | 107 def __init__(self, name = None, peer = None): |
108 self.name = name | 108 self.name = name |
| 109 self.peer = peer |
109 self.methods = [] | 110 self.methods = [] |
110 | 111 |
111 def AddMethod(self, name, ordinal = None): | 112 def AddMethod(self, name, ordinal = None): |
112 method = Method(name, ordinal) | 113 method = Method(name, ordinal) |
113 self.methods.append(method) | 114 self.methods.append(method) |
114 return method; | 115 return method; |
115 | 116 |
116 | 117 |
117 class Module(object): | 118 class Module(object): |
118 def __init__(self, name = None, namespace = None): | 119 def __init__(self, name = None, namespace = None): |
119 self.name = name | 120 self.name = name |
120 self.namespace = namespace | 121 self.namespace = namespace |
121 self.structs = [] | 122 self.structs = [] |
122 self.interfaces = [] | 123 self.interfaces = [] |
123 | 124 |
124 def AddInterface(self, name): | 125 def AddInterface(self, name): |
125 interface = Interface(name); | 126 interface = Interface(name); |
126 self.interfaces.append(interface) | 127 self.interfaces.append(interface) |
127 return interface; | 128 return interface; |
128 | 129 |
129 def AddStruct(self, name): | 130 def AddStruct(self, name): |
130 struct = Struct(name) | 131 struct = Struct(name) |
131 self.structs.append(struct) | 132 self.structs.append(struct) |
132 return struct; | 133 return struct; |
OLD | NEW |