An AsyncIterable[T] implements __aiter__(self) -> AsyncIterator[T]
An AsyncIterator[T] implements __anext__(self) -> T
it allows async for _ in aiterable
expected TODO:
Implement first async alternatives to all operation having a potentially expensive function parameter (we already have .amap/.aforeach, we need afilter...)
Overload the constructor: __init__(self, source: AsyncIterable[T])
Implement a AsyncIteratorVisitor(Visitor[AsyncIterator[T]]) that raises if non async source or non async function is involved in the stream
An
AsyncIterable[T]
implements__aiter__(self) -> AsyncIterator[T]
AnAsyncIterator[T]
implements__anext__(self) -> T
it allows
async for _ in aiterable
expected TODO:
.amap
/.aforeach
, we needafilter
...)__init__(self, source: AsyncIterable[T])
AsyncIteratorVisitor(Visitor[AsyncIterator[T]])
that raises if non async source or non async function is involved in the stream