public function getIterator()
{
$resultsNum = 0;
$processed = 0;
while (true) {
$results = $this->getCurrentResults();
if (empty($results)) {
return;
}
foreach ($results as $result) {
$processed++;
if ($processed > $this->offset) {
(yield $result);
$resultsNum++;
}
if ($this->paginationFinished($resultsNum)) {
return;
}
}
}
}