From: Yury Selivanov Date: Tue, 8 Apr 2014 16:03:07 +0000 (-0400) Subject: docs: Document __objclass__. Closes #19281. X-Git-Tag: v3.4.1rc1~116 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d3f918ca44f98683a8d0394a3610452303ceb3fd;p=python docs: Document __objclass__. Closes #19281. Initial patch by Nick Coghlan --- diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 8204dc3dcd..a78b222a28 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1467,6 +1467,14 @@ class' :attr:`__dict__`. Called to delete the attribute on an instance *instance* of the owner class. +The :attr:`__objclass__` is interpreted by the :mod:`inspect` module as +specifying the class where this object was defined (setting this appropriately +can assist in runtime introspection of dynamic class attributes). For callables, +it may indicate that an instance of the given type (or a subclass) is expected +or required as the first positional argument (for example, CPython sets this +attribute for unbound methods that are implemented in C). + + .. _descriptor-invocation: Invoking Descriptors