]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[2.7] bpo-15718: Document the upper bound constrain on the __len__ return value....
authorSerhiy Storchaka <storchaka@gmail.com>
Sun, 23 Apr 2017 05:58:09 +0000 (08:58 +0300)
committerGitHub <noreply@github.com>
Sun, 23 Apr 2017 05:58:09 +0000 (08:58 +0300)
(cherry picked from commit 85157cd89a6edac347a5b6871fcf20c500c6fbbf)

Doc/reference/datamodel.rst

index 4adf5fa59fdf9811416ec892137dda6a5a526cb1..7bdb141ae55e3070268c97eae1df65d646ce5423 100644 (file)
@@ -1891,6 +1891,14 @@ sequences, it should iterate through the values.
    :meth:`__nonzero__` method and whose :meth:`__len__` method returns zero is
    considered to be false in a Boolean context.
 
+   .. impl-detail::
+
+      In CPython, the length is required to be at most :attr:`sys.maxsize`.
+      If the length is larger than :attr:`!sys.maxsize` some features (such as
+      :func:`len`) may raise :exc:`OverflowError`.  To prevent raising
+      :exc:`!OverflowError` by truth value testing, an object must define a
+      :meth:`__nonzero__` method.
+
 
 .. method:: object.__getitem__(self, key)