History

[py] generate code for setters with no parameters

Paul Brossier committed 7 years ago

Commit 21067f91 parent da013531 file · +10 −1Browse files

Showing the changes to python/lib/gen_code.py (1 of 1 file). Show all

Unified · Split

python/lib/gen_code.py+10−1
@@ -470,6 +470,8 @@ Pyaubio_{shortname}_{method} (Py_{shortname} * self, PyObject * args) · 469 unmodified lines
470470 param = method_name.split('aubio_'+self.shortname+'_set_')[-1]
471471 refs = ", ".join(["&%s" % p['name'] for p in params])
472472 paramlist = ", ".join(["%s" % p['name'] for p in params])
473+ if len(params):
474+ paramlist = "," + paramlist
473475 pyparamtypes = ''.join([pyargparse_chars[p['type']] for p in params])
474476 out += """
475477 static PyObject *
@@ -477,11 +479,18 @@ Pyaubio_{shortname}_set_{param} (Py_{shortname} *self, PyObject *args) · 1 unmodified line
477479 {{
478480 uint_t err = 0;
479481 {paramdecls}
482+""".format(param = param, paramdecls = paramdecls, **self.__dict__)
483+
484+ if len(refs) and len(pyparamtypes):
485+ out += """
480486
481487 if (!PyArg_ParseTuple (args, "{pyparamtypes}", {refs})) {{
482488 return NULL;
483489 }}
484− err = aubio_{shortname}_set_{param} (self->o, {paramlist});
490+""".format(pyparamtypes = pyparamtypes, refs = refs)
491+
492+ out += """
493+ err = aubio_{shortname}_set_{param} (self->o {paramlist});
485494
486495 if (err > 0) {{
487496 if (PyErr_Occurred() == NULL) {{

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t