Add method to collect RequestIter into TotalList

This commit is contained in:
Lonami Exo
2019-02-27 10:15:32 +01:00
parent 6d6c1917bc
commit 5b8e6531fa
2 changed files with 23 additions and 11 deletions

View File

@@ -2,6 +2,8 @@ import abc
import asyncio
import time
from . import helpers
# TODO There are two types of iterators for requests.
# One has a limit of items to retrieve, and the
@@ -95,6 +97,17 @@ class RequestIter(abc.ABC):
return self.__aiter__()
async def collect(self):
"""
Create a `self` iterator and collect it into a `TotalList`
(a normal list with a `.total` attribute).
"""
result = helpers.TotalList()
async for message in self:
result.append(message)
return result
@abc.abstractmethod
async def _load_next_chunk(self):
"""