From 009ef2955d91e04f62a7159a1c7ddaddbfedc3b6 Mon Sep 17 00:00:00 2001 From: Jeroen Demeyer Date: Tue, 10 Sep 2019 16:01:13 +0200 Subject: [PATCH] bpo-37913: document that __length_hint__ can return NotImplemented (GH-15383) --- Doc/reference/datamodel.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 8813f57587..6b9325da2f 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -2155,8 +2155,10 @@ through the container; for mappings, :meth:`__iter__` should be the same as Called to implement :func:`operator.length_hint`. Should return an estimated length for the object (which may be greater or less than the actual length). - The length must be an integer ``>=`` 0. This method is purely an - optimization and is never required for correctness. + The length must be an integer ``>=`` 0. The return value may also be + *NotImplemented*, which is treated the same as if the ``__length_hint__`` + method didn't exist at all. This method is purely an optimization and is + never required for correctness. .. versionadded:: 3.4 -- 2.40.0