From f8e428bd5b01fb86032d727a7e8b10e3048b5fcf Mon Sep 17 00:00:00 2001 From: Josh Date: Fri, 4 Dec 2020 09:32:53 +1000 Subject: Add support for chunking AsyncIterator objects --- docs/api.rst | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'docs') diff --git a/docs/api.rst b/docs/api.rst index 6790f395..892e175e 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -2085,6 +2085,26 @@ Certain utilities make working with async iterators easier, detailed below. :return: A list of every element in the async iterator. :rtype: list + .. method:: chunk(max_size) + + Collects items into chunks of up to a given maximum size. + Another :class:`AsyncIterator` is returned which collects items into + :class:`list`\s of a given size. The maximum chunk size must be a positive integer. + + .. versionadded:: 1.6 + + Collecting groups of users: :: + + async for leader, *users in reaction.users().chunk(3): + ... + + .. warning:: + + The last chunk collected may not be as large as ``max_size``. + + :param max_size: The size of individual chunks. + :rtype: :class:`AsyncIterator` + .. method:: map(func) This is similar to the built-in :func:`map ` function. Another -- cgit v1.2.3