The getmethpartlist turtle module function does work which seems to be supposed to be done by the inspect module.
In fact, getmethpartlist
calls inspect.signature
and then iterates over it to produce a call to the callable. Perhaps this second part could also be implemented in the inspect
module.
In an issue, @tjreedy said, “For calls that just want the call signature, I wonder if calling getmethodparlist could be replaced by calling signature.”
So, my suggestion is to add two new methods to Signature
class, which:
- Returns the call:
class Signature():
def as_call(self) -> string : ...
- Returns a new
Signature
without the first parameter ifob
is a method:
class Signature():
def as_function(self): ...
Then, getmethpartlist could be:
def getmethpartlist(ob):
defs = inspect.signature(ob).as_function(ob)
call = defs.as_call()
return str(defs), call
Thoughts?