index.nct
pub use /iter/asynchronous/lending.AsyncLendingIterator
see ./adapters.nct
see ./defaults.nct
pub struct AsyncMapIter<U, I, F>
pub struct AsyncFilterIter<I, F>
pub struct AsyncTakeIter<I>
pub struct AsyncIndexed<T> {
pub index: usize
pub item: T
}
pub struct AsyncEnumerateIter<I>
pub interface AsyncIterator {
pub type Item
pub async method &+self.next(): Self.Item?!
pub noalloc default method self.map<U, F>(transform: F): AsyncMapIter<U, Self, F> from self | transform where F: &+func(item: Self.Item): U
pub noalloc default method self.filter<F>(predicate: F): AsyncFilterIter<Self, F> from self | predicate where F: &+func(&Self.Item): bool
pub noalloc default method self.take(limit: usize): AsyncTakeIter<Self>
pub noalloc default method self.enumerate(): AsyncEnumerateIter<Self>
}
instance AsyncMapIter<U, I, F> where I impl AsyncIterator, F: &+func(item: I.Item): U {
impl AsyncIterator { .Item = U }
}
instance AsyncFilterIter<I, F> where I impl AsyncIterator, F: &+func(&I.Item): bool {
impl AsyncIterator { .Item = I.Item }
}
instance AsyncTakeIter<I> where I impl AsyncIterator {
impl AsyncIterator { .Item = I.Item }
}
instance AsyncEnumerateIter<I> where I impl AsyncIterator {
impl AsyncIterator { .Item = AsyncIndexed<I.Item> }
}