summaryrefslogtreecommitdiffstats
path: root/Doc/c-api
diff options
context:
space:
mode:
authorPablo Galindo <Pablogsal@gmail.com>2021-03-23 23:57:03 (GMT)
committerGitHub <noreply@github.com>2021-03-23 23:57:03 (GMT)
commitd9692027f41ee7600fe401c066617ebfc8bac930 (patch)
treec4e711c343099c3a695701fede2d5147a168c021 /Doc/c-api
parenta81fca6ec8e0f748f8eafa12fb12cf9e12df465c (diff)
downloadcpython-d9692027f41ee7600fe401c066617ebfc8bac930.zip
cpython-d9692027f41ee7600fe401c066617ebfc8bac930.tar.gz
cpython-d9692027f41ee7600fe401c066617ebfc8bac930.tar.bz2
bpo-31861: Complete the C-API docs for PyObject_GetAiter and PyAiter_Check (GH-25004)
Diffstat (limited to 'Doc/c-api')
-rw-r--r--Doc/c-api/iter.rst6
-rw-r--r--Doc/c-api/object.rst11
2 files changed, 17 insertions, 0 deletions
diff --git a/Doc/c-api/iter.rst b/Doc/c-api/iter.rst
index 5706777..63290e0 100644
--- a/Doc/c-api/iter.rst
+++ b/Doc/c-api/iter.rst
@@ -12,6 +12,12 @@ There are two functions specifically for working with iterators.
Return non-zero if the object *o* supports the iterator protocol, and ``0``
otherwise. This function always succeeds.
+.. c:function:: int PyAiter_Check(PyObject *o)
+
+ Returns non-zero if the object 'obj' provides :class:`AsyncIterator`
+ protocols, and ``0`` otherwise. This function always succeeds.
+
+ .. versionadded:: 3.10
.. c:function:: PyObject* PyIter_Next(PyObject *o)
diff --git a/Doc/c-api/object.rst b/Doc/c-api/object.rst
index 1100af1..42e3340 100644
--- a/Doc/c-api/object.rst
+++ b/Doc/c-api/object.rst
@@ -356,3 +356,14 @@ Object Protocol
iterator for the object argument, or the object itself if the object is already
an iterator. Raises :exc:`TypeError` and returns ``NULL`` if the object cannot be
iterated.
+
+
+.. c:function:: PyObject* PyObject_GetAiter(PyObject *o)
+
+ This is the equivalent to the Python expression ``aiter(o)``. Takes an
+ :class:`AsyncIterable` object and returns an :class:`AsyncIterator` for it.
+ This is typically a new iterator but if the argument is an
+ :class:`AsyncIterator`, this returns itself. Raises :exc:`TypeError` and
+ returns ``NULL`` if the object cannot be iterated.
+
+ .. versionadded:: 3.10