summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/conf.py3
-rw-r--r--Doc/library/inspect.rst15
-rw-r--r--Doc/reference/datamodel.rst2
-rw-r--r--Doc/whatsnew/2.6.rst5
-rw-r--r--Doc/whatsnew/2.7.rst3
5 files changed, 19 insertions, 9 deletions
diff --git a/Doc/conf.py b/Doc/conf.py
index be2a86e..323d443 100644
--- a/Doc/conf.py
+++ b/Doc/conf.py
@@ -163,6 +163,9 @@ nitpick_ignore = [
('envvar', 'USER'),
('envvar', 'USERNAME'),
('envvar', 'USERPROFILE'),
+ # Deprecated function that was never documented:
+ ('py:func', 'getargspec'),
+ ('py:func', 'inspect.getargspec'),
]
# Temporary undocumented names.
diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst
index 815bd54..6fd0d32 100644
--- a/Doc/library/inspect.rst
+++ b/Doc/library/inspect.rst
@@ -273,7 +273,7 @@ attributes (see :ref:`import-mod-attrs` for module attributes):
:func:`getmembers` will only return class attributes defined in the
metaclass when the argument is a class and those attributes have been
- listed in the metaclass' custom :meth:`__dir__`.
+ listed in the metaclass' custom :meth:`~object.__dir__`.
.. function:: getmembers_static(object[, predicate])
@@ -487,12 +487,13 @@ attributes (see :ref:`import-mod-attrs` for module attributes):
has a :meth:`~object.__get__` method but not a :meth:`~object.__set__`
method, but beyond that the set of attributes varies. A
:attr:`~definition.__name__` attribute is usually
- sensible, and :attr:`__doc__` often is.
+ sensible, and :attr:`!__doc__` often is.
Methods implemented via descriptors that also pass one of the other tests
return ``False`` from the :func:`ismethoddescriptor` test, simply because the
other tests promise more -- you can, e.g., count on having the
- :attr:`__func__` attribute (etc) when an object passes :func:`ismethod`.
+ :ref:`__func__ <instance-methods>` attribute (etc) when an object passes
+ :func:`ismethod`.
.. function:: isdatadescriptor(object)
@@ -503,7 +504,7 @@ attributes (see :ref:`import-mod-attrs` for module attributes):
Examples are properties (defined in Python), getsets, and members. The
latter two are defined in C and there are more specific tests available for
those types, which is robust across Python implementations. Typically, data
- descriptors will also have :attr:`~definition.__name__` and :attr:`__doc__` attributes
+ descriptors will also have :attr:`~definition.__name__` and :attr:`!__doc__` attributes
(properties, getsets, and members have both of these attributes), but this is
not guaranteed.
@@ -1440,7 +1441,8 @@ Fetching attributes statically
Both :func:`getattr` and :func:`hasattr` can trigger code execution when
fetching or checking for the existence of attributes. Descriptors, like
-properties, will be invoked and :meth:`__getattr__` and :meth:`__getattribute__`
+properties, will be invoked and :meth:`~object.__getattr__` and
+:meth:`~object.__getattribute__`
may be called.
For cases where you want passive introspection, like documentation tools, this
@@ -1450,7 +1452,8 @@ but avoids executing code when it fetches attributes.
.. function:: getattr_static(obj, attr, default=None)
Retrieve attributes without triggering dynamic lookup via the
- descriptor protocol, :meth:`__getattr__` or :meth:`__getattribute__`.
+ descriptor protocol, :meth:`~object.__getattr__`
+ or :meth:`~object.__getattribute__`.
Note: this function may not be able to retrieve all attributes
that getattr can fetch (like dynamically created attributes)
diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst
index f7d3d2d..29298b7 100644
--- a/Doc/reference/datamodel.rst
+++ b/Doc/reference/datamodel.rst
@@ -634,6 +634,8 @@ code object; see the description of internal types below. The
module.
+.. _instance-methods:
+
Instance methods
^^^^^^^^^^^^^^^^
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index 016de15..8bdbb0f 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -1677,8 +1677,9 @@ Some smaller changes made to the core Python language are:
(:issue:`1591665`)
* Instance method objects have new attributes for the object and function
- comprising the method; the new synonym for :attr:`im_self` is
- :attr:`__self__`, and :attr:`im_func` is also available as :attr:`__func__`.
+ comprising the method; the new synonym for :attr:`!im_self` is
+ :ref:`__self__ <instance-methods>`, and :attr:`!im_func` is also available as
+ :ref:`__func__ <instance-methods>`.
The old names are still supported in Python 2.6, but are gone in 3.0.
* An obscure change: when you use the :func:`locals` function inside a
diff --git a/Doc/whatsnew/2.7.rst b/Doc/whatsnew/2.7.rst
index da66dd7..4072e04 100644
--- a/Doc/whatsnew/2.7.rst
+++ b/Doc/whatsnew/2.7.rst
@@ -860,7 +860,8 @@ Some smaller changes made to the core Python language are:
* When using ``@classmethod`` and ``@staticmethod`` to wrap
methods as class or static methods, the wrapper object now
- exposes the wrapped function as their :attr:`__func__` attribute.
+ exposes the wrapped function as their :ref:`__func__ <instance-methods>`
+ attribute.
(Contributed by Amaury Forgeot d'Arc, after a suggestion by
George Sakkis; :issue:`5982`.)