'Create a generator for low level entities in the range.
Iterating through entries moves query range past the consumed entries.
Yields:
next entry.'

def __iter__(self):

    while True:
        raw_entity_kind = util.get_short_name(self._entity_kind)
        query = self._key_range.make_ascending_datastore_query(raw_entity_kind)
        results = query.Get(limit=self._batch_size)
        if (not results):
            break
        for entity in results:
            self._key_range.advance(entity.key())
            (yield entity)
