MCPcopy Create free account
hub / github.com/battlecode/battlecode-2018 / member

Method member

bindings/frankenswig/struct.py:154–183  ·  view source on GitHub ↗
(self, type, name, docs='')

Source from the content-addressed store, hash-verified

152 self.pyextra_.append(value)
153
154 def member(self, type, name, docs=''):
155 self.members.append(Var(type,name))
156 self.member_docs.append(docs)
157
158 pre, arg, post = self.type.mut_ref().wrap_c_value('this')
159 arg = '(' + arg + ')'
160
161 getter = Method(type, self.c_name, f"{name}_get", [Var(self.type, 'this')],
162 pre +
163 '\nlet result = ' + type.unwrap_rust_value(arg + '.' + name + '.clone()') + ';\n' +
164 post +
165 '\nresult',
166 docs=docs,
167 pyname=f'{name}'
168 )
169
170 vpre, varg, vpost = type.wrap_c_value(name)
171
172 setter = Method(void.type, self.c_name, f"{name}_set",
173 [Var(self.type, 'this'), Var(type, name)],
174 pre + vpre +
175 f'\n{arg}.{name} = {varg};\n' +
176 post + vpost,
177 docs=docs,
178 pyname=f'{name}'
179 )
180 self.getters.append(getter)
181 self.setters.append(setter)
182
183 return self
184
185 def method(self, type, name, args, docs='', static=False, pyname=None, self_ref=True, getter=False):
186 # we use the "Universal function call syntax"

Callers 1

generate.pyFile · 0.80

Calls 5

VarClass · 0.85
MethodClass · 0.85
wrap_c_valueMethod · 0.45
mut_refMethod · 0.45
unwrap_rust_valueMethod · 0.45

Tested by

no test coverage detected