'Enable buffering.  Buffer `size` items before yielding them.'

def enable_buffering(self, size=5):

    if (size <= 1):
        raise ValueError('buffer    size    too    small')
    self.buffered = True
    self._next = partial(next, self._buffered_generator(size))
