gossamer/async_iterator

Types

pub type AsyncIterator(a, return, next)

Values

pub fn for_await(
  in iterator: AsyncIterator(a, return, next),
  run fun: fn(a) -> any,
) -> promise.Promise(Nil)
pub fn from_list(list: List(a)) -> AsyncIterator(a, Nil, Nil)

Creates an async iterator from a Gleam list.

pub fn new(
  next: fn(option.Option(next)) -> promise.Promise(
    iterator_result.IteratorResult(a, return),
  ),
) -> AsyncIterator(a, return, next)
pub fn next(
  iterator: AsyncIterator(a, return, next),
) -> promise.Promise(iterator_result.IteratorResult(a, return))
pub fn next_with(
  iterator: AsyncIterator(a, return, next),
  value: next,
) -> promise.Promise(iterator_result.IteratorResult(a, return))
pub fn return(
  iterator: AsyncIterator(a, return, next),
) -> promise.Promise(
  Result(iterator_result.IteratorResult(a, return), Nil),
)
pub fn return_with(
  iterator: AsyncIterator(a, return, next),
  value: return,
) -> promise.Promise(
  Result(iterator_result.IteratorResult(a, return), Nil),
)
pub fn throw(
  iterator: AsyncIterator(a, return, next),
  reason reason: e,
) -> promise.Promise(
  Result(iterator_result.IteratorResult(a, return), Nil),
)
pub fn to_list(
  iterator: AsyncIterator(a, return, next),
) -> promise.Promise(List(a))

Collects all values from an async iterator into a list. Consumes the iterator.

pub fn with_return(
  iterator: AsyncIterator(a, return, next),
  return: fn(option.Option(return)) -> promise.Promise(
    iterator_result.IteratorResult(a, return),
  ),
) -> AsyncIterator(a, return, next)
pub fn with_throw(
  iterator: AsyncIterator(a, return, next),
  throw: fn(e) -> promise.Promise(
    iterator_result.IteratorResult(a, return),
  ),
) -> AsyncIterator(a, return, next)
Search Document