summaryrefslogtreecommitdiffstats
path: root/Doc/library/functions.rst
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2019-08-29 08:02:58 (GMT)
committerRaymond Hettinger <rhettinger@users.noreply.github.com>2019-08-29 08:02:58 (GMT)
commit43b7ed77a8224c378b436ad3385733454198be41 (patch)
tree52c298999f2e883f131616eb89543ada4189411d /Doc/library/functions.rst
parentd1d42bf4a404f092fe90fe8984481c507a64ef0a (diff)
downloadcpython-43b7ed77a8224c378b436ad3385733454198be41.zip
cpython-43b7ed77a8224c378b436ad3385733454198be41.tar.gz
cpython-43b7ed77a8224c378b436ad3385733454198be41.tar.bz2
bpo-23674: Clarify ambiguities in super() docs (GH-15564) (GH-15586)
(cherry picked from commit cd81f0500fe98c7f4cddb06530fffabd14f036b8) Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
Diffstat (limited to 'Doc/library/functions.rst')
-rw-r--r--Doc/library/functions.rst13
1 files changed, 10 insertions, 3 deletions
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index c225f3d..c748b08 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -1587,10 +1587,17 @@ are always available. They are listed here in alphabetical order.
Return a proxy object that delegates method calls to a parent or sibling
class of *type*. This is useful for accessing inherited methods that have
- been overridden in a class. The search order is same as that used by
- :func:`getattr` except that the *type* itself is skipped.
+ been overridden in a class.
- The :attr:`~class.__mro__` attribute of the *type* lists the method
+ The *object-or-type* determines the :term:`method resolution order`
+ to be searched. The search starts from the class right after the
+ *type*.
+
+ For example, if :attr:`~class.__mro__` of *object-or-type* is
+ ``D -> B -> C -> A -> object`` and the value of *type* is ``B``,
+ then :func:`super` searches ``C -> A -> object``.
+
+ The :attr:`~class.__mro__` attribute of the *object-or-type* lists the method
resolution search order used by both :func:`getattr` and :func:`super`. The
attribute is dynamic and can change whenever the inheritance hierarchy is
updated.