Generator[YieldType; SendType; ReturnType] = concept selfof Iterator[YieldType] try: self.send(SendType) is YieldType except StopIterationT[ReturnType]: discard self.throw(CatchableError)
proc close(self: Generator)
proc next[T; R](self: Generator[T, NoneType, R]): T {.inline.}
template iter[T; S; R](self: Generator[T, S, R]): Iterator[T]