diff options
author | Yury Selivanov <yselivanov@sprymix.com> | 2014-01-29 15:52:57 (GMT) |
---|---|---|
committer | Yury Selivanov <yselivanov@sprymix.com> | 2014-01-29 15:52:57 (GMT) |
commit | 76c6c593ed0e85332a3d320c57cf032d22410426 (patch) | |
tree | 9fe6b60ac1d4275bf44ca71936da0d827b5f84f3 /Lib/inspect.py | |
parent | b77511da9257bae4082556e0235b23d008dfb789 (diff) | |
download | cpython-76c6c593ed0e85332a3d320c57cf032d22410426.zip cpython-76c6c593ed0e85332a3d320c57cf032d22410426.tar.gz cpython-76c6c593ed0e85332a3d320c57cf032d22410426.tar.bz2 |
inspect.signature: Add support for decorated (wrapped) builtins #20425
Diffstat (limited to 'Lib/inspect.py')
-rw-r--r-- | Lib/inspect.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Lib/inspect.py b/Lib/inspect.py index fefcddb..f0c1247 100644 --- a/Lib/inspect.py +++ b/Lib/inspect.py @@ -1530,9 +1530,6 @@ def signature(obj): if not callable(obj): raise TypeError('{!r} is not a callable object'.format(obj)) - if _signature_is_builtin(obj): - return Signature.from_builtin(obj) - if isinstance(obj, types.MethodType): # In this case we skip the first parameter of the underlying # function (usually `self` or `cls`). @@ -1570,6 +1567,9 @@ def signature(obj): return sig.replace(parameters=new_params) + if _signature_is_builtin(obj): + return Signature.from_builtin(obj) + if isinstance(obj, types.FunctionType): return Signature.from_function(obj) |