[doc] Mention __slots__ behavior in weakref.rst (GH-21061)

It took me longer than I expected to figure out why a random class
I dealt with didn't support weak references. I believe this addition
will make the __slots__/weakref interaction more discoverable to people
having troubles with this. (Before this patch __slots__ was not
mentioned in weakref documentation even once).

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
This commit is contained in:
Jakub Stasiak 2021-10-06 20:23:02 +02:00 committed by GitHub
parent 682aecfdeb
commit b24b47e643
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 0 deletions

View File

@ -88,6 +88,10 @@ support weak references but can add support through subclassing::
Extension types can easily be made to support weak references; see
:ref:`weakref-support`.
When ``__slots__`` are defined for a given type, weak reference support is
disabled unless a ``'__weakref__'`` string is also present in the sequence of
strings in the ``__slots__`` declaration.
See :ref:`__slots__ documentation <slots>` for details.
.. class:: ref(object[, callback])