public function forEach(Consumer $consumer) { $gen = $this->execute(); while ($gen->valid()) { $consumer->accept($gen->current()); $gen->next(); } }