Project

General

Profile

« Previous | Next » 

Revision 1892

iters.py: Added func_iter() and consume_iter()

View differences:

iters.py
2 2

  
3 3
def is_iterable(value): return getattr(value, '__iter__', False)
4 4

  
5
# Sentinel to use in iter() if function return value should be ignored
6
iter_end = object()
7

  
8
def func_iter(func):
9
    '''Used to iterate a generating function which raises StopIteration instead
10
    of returning a sentinel value'''
11
    return iter(func, iter_end)
12

  
13
def consume_iter(iter_):
14
    for elem in iter_: pass
15

  
5 16
def flatten(outer_iter):
6 17
    for iter_ in outer_iter:
7 18
        for el in iter_: yield el

Also available in: Unified diff