bpo-26701: Add documentation for __trunc__ (GH-6022)
`int` fails back to `__trunc__` is `__int__` isn't defined, so cover
that in the docs.
diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst
index 8b127a0..26ad7b8 100644
--- a/Doc/reference/datamodel.rst
+++ b/Doc/reference/datamodel.rst
@@ -2377,6 +2377,15 @@
of the appropriate type.
+.. method:: object.__trunc__(self)
+
+ Called to implement :meth:`math.trunc`. Should return the value of the
+ object truncated to a :class:`numbers.Integral` (typically an
+ :class:`int`). If a class defines :meth:`__trunc__` but not
+ :meth:`__int__`, then :meth:`__trunc__` is called to implement the
+ built-in function :func:`int`.
+
+
.. method:: object.__index__(self)
Called to implement :func:`operator.index`, and whenever Python needs to