From: Nikita Sobolev Date: Fri, 29 Sep 2023 08:26:55 +0000 (+0300) Subject: gh-109961: Use proper `module` for `copy` method docs (#110027) X-Git-Tag: v3.13.0a1~235 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f1b1680a72cc7eb650f785b9438a3900ca6f695e;p=thirdparty%2FPython%2Fcpython.git gh-109961: Use proper `module` for `copy` method docs (#110027) Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> --- diff --git a/Doc/library/copy.rst b/Doc/library/copy.rst index 811b2c51dd3d..74333b2e9348 100644 --- a/Doc/library/copy.rst +++ b/Doc/library/copy.rst @@ -87,6 +87,8 @@ pickle functions from the :mod:`copyreg` module. single: __copy__() (copy protocol) single: __deepcopy__() (copy protocol) +.. currentmodule:: None + In order for a class to define its own copy implementation, it can define special methods :meth:`~object.__copy__` and :meth:`~object.__deepcopy__`. @@ -101,7 +103,7 @@ special methods :meth:`~object.__copy__` and :meth:`~object.__deepcopy__`. Called to implement the deep copy operation; it is passed one argument, the *memo* dictionary. If the ``__deepcopy__`` implementation needs - to make a deep copy of a component, it should call the :func:`deepcopy` function + to make a deep copy of a component, it should call the :func:`~copy.deepcopy` function with the component as first argument and the *memo* dictionary as second argument. The *memo* dictionary should be treated as an opaque object. @@ -109,7 +111,8 @@ special methods :meth:`~object.__copy__` and :meth:`~object.__deepcopy__`. .. index:: single: __replace__() (replace protocol) -Function :func:`replace` is more limited than :func:`copy` and :func:`deepcopy`, +Function :func:`!copy.replace` is more limited +than :func:`~copy.copy` and :func:`~copy.deepcopy`, and only supports named tuples created by :func:`~collections.namedtuple`, :mod:`dataclasses`, and other classes which define method :meth:`~object.__replace__`.