'Populates the result cache with ``ITER_CHUNK_SIZE`` more entries
(until the cursor is exhausted).'

def _populate_cache(self):

    if (self._result_cache is None):
        self._result_cache = []
    if (not self._has_more):
        return
    try:
        for _ in xrange(ITER_CHUNK_SIZE):
            self._result_cache.append(self.next())
    except StopIteration:
        self._has_more = False
