summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/inspect.rst10
1 files changed, 7 insertions, 3 deletions
diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst
index 8a74cad..ed8d705 100644
--- a/Doc/library/inspect.rst
+++ b/Doc/library/inspect.rst
@@ -665,9 +665,6 @@ function.
Accepts a wide range of Python callables, from plain functions and classes to
:func:`functools.partial` objects.
- If the passed object has a ``__signature__`` attribute, this function
- returns it without further computations.
-
For objects defined in modules using stringized annotations
(``from __future__ import annotations``), :func:`signature` will
attempt to automatically un-stringize the annotations using
@@ -702,6 +699,13 @@ function.
Python. For example, in CPython, some built-in functions defined in
C provide no metadata about their arguments.
+ .. impl-detail::
+
+ If the passed object has a :attr:`!__signature__` attribute,
+ we may use it to create the signature.
+ The exact semantics are an implementation detail and are subject to
+ unannounced changes. Consult the source code for current semantics.
+
.. class:: Signature(parameters=None, *, return_annotation=Signature.empty)