Skip to content
Snippets Groups Projects
Verified Commit 9ebe25c7 authored by Tobias Hangleiter's avatar Tobias Hangleiter
Browse files

Update signature of wrapped methods

parent 0e0e9ac8
No related branches found
No related tags found
1 merge request!66Extend simulator module
......@@ -70,6 +70,20 @@ def with_delay(meth):
yield data
# Insert parameter sig
meth_sig = inspect.signature(meth)
wrapped_sig = inspect.signature(wrapped)
delay_param = inspect.Parameter('delay', inspect.Parameter.KEYWORD_ONLY, default=True,
annotation=bool | float)
parameters = list(meth_sig.parameters.values())
if parameters[-1].kind is inspect.Parameter.VAR_KEYWORD:
parameters = parameters[:-1] + [delay_param, parameters[-1]]
else:
parameters = parameters + [delay_param]
wrapped.__signature__ = wrapped_sig.replace(parameters=parameters)
wrapped.__with_delay = True
return wrapped
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment